JSON包括语法

Bob*_*Bob 7 json ruby-on-rails

我的设置:Rails 2.3.10,Ruby 1.8.7

我在几个模型之间有一套相当复杂的关系.

class A
  has_many :classB
  has_many :classD
end

class B
  belongs_to :classA
  has_many :classC
end

class C
  belongs_to :classB
  belongs_to :classE
end

class D
  belongs_to :classA
  belongs_to :classE
end

class E
  has_many :classD
  has_many :classC
end
Run Code Online (Sandbox Code Playgroud)

我遇到了使用JSON语法的问题,以获取以classA开头的所有相关信息.这是我到目前为止所做的工作.

classA.to_json(:include => {:classB => {:include => [:classC, :classE]}})
Run Code Online (Sandbox Code Playgroud)

我无法使语法工作也包括classD和相关的classE记录.

更新实际上这样的东西可能会起作用,除了我不能混合哈希和数组

classA.to_json(:include => [ :classB => { :include => { :classC => { :include => :classE } } },
                             :classD, :classE  ])
Run Code Online (Sandbox Code Playgroud)

请注意,我在上面的示例代码中没有使用单数/复数,但在我的实际代码中,我是.任何见解将不胜感激.

谢谢,鲍勃

tok*_*and 13

这应该工作:

classA.to_json(:include => {
  :classB => {:include => {:classC => {:include => :classE}}},
  :classD => {},
  :classE => {},
})
Run Code Online (Sandbox Code Playgroud)