J'ai un graphe d'objet ressemblant à l'arbre qui ressemble à ce qui suit:Comment rendre une valeur de hachage partielle dans JBuilder?
{
:name => "Grandparent",
:children => {
:child_a => {
:name => "Parent A",
:children => {
:grandchild_a_a => {
:name => "Child A-A",
:children => {}
}
:grandchild_a_b => {
:name => "Child A-B"
:children => {}
}
}
}
:child_b => {
:name => "Parent B",
:children => {}
}
}
}
Je veux générer JSON qui reflète cette structure. Je ne connais pas la profondeur de l'imbrication de l'enfant, et les attributs sont les mêmes pour chaque niveau. Les clés du hash des enfants sont significatives et doivent être préservées.
Je veux utiliser une partie JBuilder pour représenter un niveau, puis l'appeler récursive. Voici mon modèle jusqu'ici:
# _level_partial.json.jbuilder
# passing the above object graph as :level
json.name level[:name]
json.children do
level[:children].each do |key, child|
# How do I map the following to the given key?
json.partial! "level_partial", :level => child
end
end
Je peux générer le JSON pour chaque enfant par l'assez facilement appel partiel, mais qu'il insère directement dans la sortie JSON. Comment mapper les résultats du partiel à une clé de hachage/objet particulière?