2

我有一个 Rails 应用程序Users:用户has_many :posts

我的表中有一个sticky布尔值Posts

我需要stickies特定于用户(因为我将在彼此的页面上显示其他用户的帖子)&所以我的帖子类中有'has_many:stickies'。

我的问题是,我应该删除该sticky列并添加一个“Stickies”表,还是有办法让 Stickies 用户特定于布尔值?如果是这样,它会更好吗?

先感谢您。


def self.visible_to(user)
   where('posts.user_id = :user_id or favorites.user_id = :user_id', { :user_id => user.id }).includes(:favorites).order('sticky, favorites.created_at, posts.created_at)
end

那么,在这种情况下,拥有 'has_many :stickies' 比使用布尔值更好吗?

4

1 回答 1

3

我会做post.rb:

scope :stickies, where(sticky: true)

现在您可以致电:

user.posts.stickies
于 2013-07-19T04:08:49.797 回答