Rails tutorial リプライ機能実装

仕様

  • マイクロポストに@<ユーザーID>が含まれる場合、ユーザーIDに対して返信する
  • @を使うと、自分のフィードと相手のフィードにのみ表示される。自分のユーザーページにも表示されない
  • フォローしているしていないに関わらずリプライは可能

モデル

  • Micropostsモデルに、in_reply_toのカラムを足す。ここには@以降が入力される
  • in_reply_toに入力がある場合、ユーザーページのマイクロポストに表示されない
  • in_reply_toに入力がある場合、マイクロポストをしたユーザーと、リプライを送られたユーザーの@feed_itemsにマイクロポストを加える(フォローしていないユーザーからの分も足す)

コントローラー

  • micropostのcreateに、ifで分岐を追加。また、private内にcontent内に使用可能な@user_nameがあるか判別するself.reply?関数を追加して使う

備考