我有一个型号Model1,其中包含:
has_and_belongs_to_many :child_items
是否可以通过ID列表查询child_items
?类似的东西:
model1.child_items.where(id: [1, 2, 3])
是的,我可以这样做:
ChildItem.where(id: [1, 2, 3])
但是通过Model1
它会更好,因为我会成为一个加入,而不仅仅是child_items
,而是那些真正属于Model1
的人,可能在[1,2,3]中也可能有其他ID。
因此,我该怎么做?
答案 0 :(得分:1)
model1.child_items.where('child_items.id IN (?)', [1, 2, 3])
答案 1 :(得分:-1)
我会改用这种方法:
model1_instance.child_items.where(child_items: { id: [1, 2, 3] })
Rails允许您将表名称作为哈希键传递,然后添加要查询的任何参数。