Diciamo che ho una classe Persona e una classe GangCome delegare al metodo to_builder di un modello da una vista 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
Come posso utilizzare questo metodo to_builder da un punto di vista?
Per esempio
#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
Intendiamoci, io non mai desidera utilizzare il default Person.as_json, perché io non voglio rendere l'attributo secret
sulla Persona.
La maggior parte delle cose che ho provato hanno finito per rendere l'equivalente di Person.as_json, non di Person.to_builder.
E per un singolo oggetto al livello superiore? Come in un gang_member # show.json azione? –