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?関数を追加して使う