Я пишу веб-приложение Grails, чтобы принять входные данные ниже и переформатировать его в выходной формат ниже, который затем можно использовать для рисования fancyTree. Я создал класс контроллера с кодом, указанным ниже, за исключением следующего. Как я могу выполнить итерацию, чтобы сделать формат, похожий на выходной формат, показанный ниже? Я посмотрел, как Groovy делает каждый синтаксис, но как я могу использовать его для добавления ингредиентов?Grails Создание выходного формата JSON
фрагмент кода:
def list(){
def results = recipies.list()
def recipiesContents = [:] //Test List
recipiesContents=[]
for (record in results){
test.add([folder:true, title: results.Name, key: results.key
])
}
//render response types
withFormat {
html test
json {render test as JSON}
xml {render test as XML}
}
}
Входные данные:
{
recipies :[
{key: "1",
category:"Tuna Sandwich"
data:[{some data}],
ingredients: [
{item_name:"mayo",
brand: "My Own Brand"
},
{
item_name: "Tuna".
brand: "Bumble Bee"
}
]},
{key: "2",
category:"Chicken Noodle Soup"
data:[{some data}],
ingredients: [
{item_name:"condensed chicken soup",
brand: "Campbell"
},
{
item_name: "Noodles".
brand: "Top Ramen"
}
]}
]
}
Выходные данные:
[
{
title: "Tuna Sandwich"
ingredients: [
{title: "Tuna"},
{title: "mayo"}
]
},
{
title: "Chicken Noodle Soup",
ingredients: [
{title: "condensed chicken soup"},
{title: "Noodles"}
]
}
]