我有一个这样的架构...
class Foo < ActiveRecord::Base
has_many :bars
end
class Bar < ActiveRecord::Base
belongs_to :foo
belongs_to :bar
end
class Baz < ActiveRecord::Base
has_many :bars
end
我正在尝试将所有三个对象嵌套并在JSON中分解,因此我有以下代码...
foo = Foo.first
foo.to_json(:include => {:bars => :baz})
但我得到以下例外......
无法克隆Symbol file:try.rb location:clone line:36
我想让所有嵌套的条形图和所有baz嵌套的条形图都得到Foo。这可能吗?
我希望我保持抽象示例的尝试是有道理的:)
答案 0 :(得分:1)
我认为在to_json方法上嵌套模型的正确方法如下:
foo.to_json(:include => { :bars => { :include => { :baz } } }
根据to_json的api 方法。
我希望它有所帮助:)
答案 1 :(得分:0)
我从控制器方法渲染json时得到了相同的“无法克隆符号文件”错误。像这样避免它:
render :json => @team.to_json( :include => [:members] )