У меня есть модель курса с 2 связями с другой моделью, Tree:
belongs_to :interaction_outline, :class_name => "Tree",
:foreign_key => "interaction_outline_id"
belongs_to :token_outline, :class_name => "Tree",
:foreign_key => "token_outline_id"
Я прочитал this и смог включить ассоциации моего брата в мой контроллер.
@course.to_json(:include=> [:interaction_outline, :token_outline]
Мне также удалось получить несколько вложенных ассоциаций:
@course.to_json(:include=>{:interaction_outline=>
{:include=> {:tree_node=>
{:include=> :definition}}}} )
НО я не могу получить как одноуровневое, так и несколько вложенных включений:
@course.to_json (:include=> [{:interaction_outline=>
{:include=> {:tree_node=>
{:include=> :definition}}}},
{:token_outline=>
{:include=> {:tree_node=>
{:include=> :definition}}}} ] )
#NoMethodError (undefined method `macro' for nil:NilClass)
#the error you get when the syntax or the association is wrong
Я тоже пробовал:
@course.to_json (:include=> [:interaction_outline=>
{:include=> {:tree_node=>
{:include=> :definition}}},
:token_outline=>
{:include=> {:tree_node=>
{:include=> :definition}}} ] )
#same error
Какой правильный синтаксис здесь?