1
我有Popup
和User
有一个HABTM协会。Rails找到哪里HABTM协会是零
我试图写Popup
的涵盖范围看起来像:Popup.not_seen_by(current_user).first
不幸的是,我在下面执行不工作。我觉得我走在正确的轨道上,任何人都愿意帮助我克服这个最后的障碍吗?
class Popup < ActiveRecord::Base
has_and_belongs_to_many :users, :uniq => true
scope :not_seen_by, lambda { |user|
# This does NOT work
joins("LEFT JOIN popups_users ON popups.id = popups_users.popup_id").
where("popups_users.user_id != ?", user.id)
}
end
谢谢!
有没有这样做的方式没有子选择?或者是最快的SQL方式呢? –
此外,只是尝试了这一点,它不起作用 –
好吧,我把它改成'where('id NOT IN(select pop_id from popups_users where user_id =?)',user.id)'并且工作。如果您更新了答案,我会将其标记为正确。 –