powiedzmy mam klasy osoba i klasę GangJak mogę delegować do metody to_builder modelu z widoku JBuilder?
class Person
belongs_to :gang
attr_accessible :name, :secret
def to_builder
Jbuilder.new do |app|
person.id id
person.name name
end
end
end
class Gang
has_many :people
attr_accessible :name
end
Jak używać tej metody to_builder z widoku?
Na przykład
#app/views/gang/show.json.jbuilder (@gang set by the controller)
json.gang do |json|
json.name @gang.name
json.gang_members(@gang.people) do |person|
#how do I delegate to the person.to_builder here?
end
end
Pamiętaj, że nie zawsze po prostu chcesz użyć domyślnego Person.as_json, ponieważ nie chcę, aby uczynić atrybut secret
na osobę.
Większość rzeczy, które wypróbowałem, okazało się odpowiednikiem Person.as_json, a nie Person.to_builder.
Co powiesz na pojedynczy obiekt na najwyższym poziomie? Jak w akcji gang_member # show.json? –