鉴于以下情况,使用activerecord:
用户belongs_to事件
我想找到所有没有名为“party”的活动的用户。
所以我尝试了以下内容:
User.all(:joins => :event, :conditions => ["events.name != ?", "party"])
但是,这只会返回有活动的用户,但不会返回“派对”活动。它不会返回所有完全没有事件的用户,因为:连接会自动将结果限制为仅关联的记录。
我可以做两个查询并将结果一起添加,但有一种方法,在一个查询中获取非关联记录,以及匹配条件的相关记录吗?
答案 0 :(得分:3)
这个怎么样?
User.all(
:include => :event,
:conditions => ["users.event_id IS NULL OR events.name != ?", "party"])