rails app中的嵌套连接语句

时间:2014-12-02 08:42:06

标签: ruby-on-rails postgresql join

在我的rails appI中有四个模型(比如A,B,C,D,E和F)

  • A属于B
  • B有很多Cs
  • C属于D
  • D属于E和F

我正在尝试按如下方式构建查询

scope = A.joins(:b, { b: [:cs, {cs: [:d, {d: [:e,:f] } ] } ] })

但它不起作用。错误消息为schema cs (plural of c) does not exist

我正在使用Postgresql

1 个答案:

答案 0 :(得分:1)

好吧,您似乎错过了C模型中的B引用(b_id)。 C需要知道它属于哪个B。之后,您可以将查询简化为:

A.joins(b: {cs: {d: [:e, :f]}})