我有一个模型Lodging
,它有关联has_and_belongs_to_many :amenities
现在我想要一个返回所有lodgings
的查询,其中amenities
包含{{1}等数组中的ID }}
谢谢!
答案 0 :(得分:2)
您需要使用joins
。
Lodging.joins(:amenities).where(amenities: { id: [2, 1, 3] })
值得一提的是,默认情况下,加入使用的是INNER JOIN
,这意味着仅Lodging.joins(:amenities)
只会排除所有住宿而没有任何便利设施。