我收集了来自current_user的帖子和其他'关注的'用户显示在列表中。可以在提交时将帖子标记为匿名,这会隐藏海报名称(在posts数据库中有一个“1”或“0”的39;)
在我的帖子集中,我想显示current_user的匿名帖子,但不包括其他用户的匿名帖子。
这是我在控制器中的内容:
@feed = current_user.feed.where('anon != ?', '1')
问题在于它排除了我列表中的所有匿名帖子。
有什么想法吗?
更新
这是我的Feed方法:
def feed
following_other_ids = "SELECT followable_id FROM follows
WHERE followable_type = 'Other' AND follower_id = :user_id"
following_user_ids = "SELECT followable_id FROM follows
WHERE followable_type = 'User' AND follower_id = :user_id"
Post.where("other_id IN (#{following_other_ids})
OR user_id IN (#{following_user_ids})
OR user_id = :user_id", user_id: id)
end
答案 0 :(得分:1)
@feed = current_user.feed.where('anon != ? OR user_id = ?', '1', current_user)
答案 1 :(得分:0)
怎么样:
@feed = current_user.posts.where(anon: 0)