我正在尝试返回此语句的反面:
scope :subscribed, lambda {|user| where(:venue_id => user.flagged_venues)}
flagged_venues
返回一个 id 数组,所以当我运行该语句时,我会得到所有标记的场所。我真正想要的是完全相反的:除了标记的场馆之外的所有场馆。
我尝试使用!=
而不是,=>
但它返回了所有场地。
当它更改为where("venue_id <> ?", user.flagged_venues)
then 我收到此错误:PG::DatatypeMismatch: ERROR: argument of WHERE must be type boolean, not type record LINE 1: SELECT "events".* FROM "events" WHERE (venue_id <> 2,4)