У меня есть следующие модели:
class User < ActiveRecord::Base
has_many :books, :dependent => :destroy
has_many :favorites
has_many :books, :through => :favorites
end
class Favorite < ActiveRecord::Base
belongs_to :book
belongs_to :user
validates :user_id, :book_id, :presence => true
end
class Book < ActiveRecord::Base
belongs_to :user
belongs_to :favorite
end
Идея состоит в том, что пользователь может владеть книгой и добавить книгу от другого пользователя в качестве избранного. В rails console
я попытался User.find(1).favorites.books
, но получил NoMethodError: неопределенный метод books'. And
user.books` возвращает только книги, принадлежащие этому пользователю
Есть ли способ получить все книги, которые принадлежат любимому пользователю в этом случае?