在AR中的联接中使用范围

时间:2014-09-01 07:19:55

标签: sql ruby-on-rails activerecord scope

在以前的问题中没有找到答案。

我在模型A中有一个范围

A.activated

执行相当复杂的查询和连接,但它可以正常工作。

我希望将A到B表连接为LEFT OUTER JOIN,但只将A中的行加入范围

B.joins(:c).joins("LEFT OUTER JOIN a ON a.some_column = c.some_other_column")< ---如何添加范围?

1 个答案:

答案 0 :(得分:0)

所以答案是神话般的#merge,不要带着它回家!

B.joins(:c).joins("LEFT OUTER JOIN a ON a.some_column = c.some_other_column").merge(A.activated)

Ta da!