表:
销售,类型,销售类型。
销售has_many SaleTypes,has_many类型通过SalesTypes。 类型has_many SaleTypes,has_many通过SalesTypes销售。
我想找到所有销售,其中Types.id == 1 OR在[1,2,3]中。
到目前为止,最好的解决方案是:
Sale.joins(:sale_types).where('sale_types.type_id = ?', '1')
然而,这似乎不实用,并且它不接受数组/多个匹配。有更好的方法吗?
答案 0 :(得分:1)
做连接是我能想到的最佳方式。如果要根据多种类型选择销售,请执行此操作
Sale.joins(:sale_types).where('sale_types.type_id in (?)', types)