我有以下关联:
Order has_many Items
Item has_many Keys
我想查找给定订单的所有商品,并获取“已使用”属性为真的那些键。如果该属性不正确,请不要给我回复键,但我仍然想要这些项目。
我试过这样做:
@order = Order.find(3)
@items = @order.items.includes(:keys).where('keys.used',true).references('keys')
但这不会返回任何结果,我希望它返回那些项目,即使没有使用属性为true的键。
我错过了什么?
答案 0 :(得分:0)
试试这个
@order = Order.find(3)
@items = @order.items.joins(:keys).where(keys: {used: true})
参考:http://guides.rubyonrails.org/active_record_querying.html#joining-tables