是否可以将少量对象发送到gson渲染视图中?我尝试在controller中使用:
respond trainings, [status: OK, view:"trainingsByClients", model: [myVariable: "test", anotherVariable: 123]]
在gson视图中:
model {
Iterable<Training> trainingList
String myVariable
}
json {
myVariable myVariable
trainings tmpl.training(trainingList ?: [])
}
并且它以如下方式响应:
{
"myVariable": null,
"trainings": [
{
"id": 3,
"name": "test t",
"numberOfAbsentClients": 0,
"startDate": "2016-11-20T09:00:00+0000",
"numberOfClients": 2,
"section": {
"id": 1,
"name": "test sec"
}
},
{
"id": 10,
"name": "test 2",
"numberOfAbsentClients": 0,
"startDate": "2016-11-09T11:00:00+0000",
"numberOfClients": 2,
"section": {
"id": 2,
"name": "sec 2"
}
}
]
}
2条答案
按热度按时间oxalkeyp1#
好吧,我找到了解决办法:
因此我们应该使用
render
而不是respond
。响应没有正确地添加额外的模型对象。ilmyapht2#
实际上,在使用respond时,必须对所有模型属性使用g.render方法
示例GSON视图:
这只与您在response.model参数中解析的模型相关