사용자, 게임 및 GameView가 있습니다. GameView는 사용자가 본 게임을 설명합니다. 문제는 검토되지 않은 게임을 가져 오기 위해 어떤 조건을 사용해야하는지 파악할 수 없다는 것입니다.has_many "not something": through. 어떤 조건을 사용해야합니까?
class User < ActiveRecord::Base
has_many :game_views
has_many :unviewed_games, :through => :game_views, :source => :game, ???what conditions???
end
class GameView < ActiveRecord::Base
belongs_to :user
belongs_to :game
end
1. 쿼리에': include' 절을 추가 할 필요가 없습니다. 나는 또한 선언 체크 라인을 제거 할 것이다.''@unviewed_games || = Game.all (...' –
': include'에 대한 좋은 호출인데, 나는 게시물을 쓸 때 쿼리를 변경했다. , 왜냐하면'|| ='는 여전히 데이터베이스를 다시 질의 할 수 있기 때문에'.all'에서는 nil이 발생하지 않아야합니다. 그러나 내 코드가 일관성이 있어야합니다. '|| ='그리고 때때로 선언 검사. –