我试图在地图上使用g:each
标记,但GSP无法识别它。GSP/Groovy-g:每个都有对象阵列
的代码是:
if(previousQuestions == null)
{
previousQuestions = []
}
def obj = AnimaisTreeMap.get(curNode)
previousQuestions.push('question':obj.nodeDescription, 'answer': getDescOptionAnswer(optionAnswered))
而g:每个标签是:
的输出是:
[{question=vive na água, answer=Não}, {question=tem listras, answer=Sim}]
据我知道对象克:每个读取可能在JSON格式“属性:值”,但我的对象是“属性=值”
我该如何解决它?
修订
看到this link后,我找到了解决办法。问题本身就是“向前”的功能,我把“之前的问题”传递给了另一个动作。而不是“参数”,正确的方法是“模型”。
forward(action:'index', model: [curNode: nextNode.id,
previousNode: curNode,
curQuestion: curQuestion,
previousQuestions: answersTrace])
当我需要恢复“previousQuestions”时,我必须在控制器中使用“request”注入对象。在此之后,我的代码是OK
1:此链接
显示你的'g.each'标签 – injecteer
'previousQuestions = []'这不是一个地图 – injecteer
@ injecteer我刚刚添加了代码。我也修改了标题,因为是一组对象,而不是 –