我正在寻找找到不属于用户的书籍的正确方法......以下是关联:
预订 -
has_many :owns, :dependent => :destroy
用户 -
has_many :owns, :dependent => :destroy
has_many :owned_books, :through => :owns, source: :book, :dependent => :destroy
拥有 -
belongs_to :user
belongs_to :book
我有不同图书的图书浏览量(例如,Book.where(title => "Foo")
或Book.where(title => "Bar")
,并希望添加一个过滤器,用户只能看到具有该标题但不拥有的图书。对我来说很明显,这应该是书籍模型中的一个新关联,但我有点迷失。
答案 0 :(得分:7)
如果你正在谈论排除用户拥有的那些:
Book.where.not(id: user.owned_book_ids)
您可以通过添加附加条件来链接其他条件。