前提・実現したいこと
twitter的なアプリを作っており
タイムラインにはフォローしている人と自分のツイートを表示したいのですが
フォロワーのツイートまで表示されてしまいます。
DB関係はあまり得意ではないのでご教示お願いします。
発生している問題・エラーメッセージ
ツイートにフォロワーとフォローどちらも表示されてしまう。
該当のソースコード
ruby
1/posts_contoroller.rb 2 @posts = current_user.tweettimeline.order('posts.created_at DESC').includes(:user) 3 4/user.rb 5 def tweettimeline 6 following_ids = "SELECT follow_id FROM relationships WHERE user_id" 7 Post.where("user_id IN (#{following_ids}) OR user_id = :user_id", user_id: id) 8 end
試したこと
自分で書いておいて何ですが何処かのページを参考にして書いたため、いまいち分かっていませんが
リレーションシップで関係のあるidを取り出して(フォロイー、フォロワー両方)following_idsに入れてるという感じですか?
ちなみにフォローはrelationshipモデルにより実装しておりuser_id(フォローした人)、follow/id(フォローされた人)によって作られています。
userモデルはdeviseで作られています。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
rails5.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。