1

我是一个完全节奏的新手,并且陷入了我的一个简单测试(在这里测试:http: //fiddle.rythmengine.com/

我想用一个简单的例子来解释这个问题是最容易的:

我的 JSON 输入参数:

{myObj: 
 {name: "test", values: [ {id: 1}, {id: 2} ]
 }
}

所以 values 属性是一个对象数组 - 这些对象只有一个属性id

我的测试模板:

@args Object myObj
Hello @myObj.name@

@for (Object v: myObj.values) {
  @// this fails
}

这失败了:

org.rythmengine.exception.CompileException: values cannot be resolved or is not a field

这里有什么问题?

即在循环之外我可以访问 myObj.values

@args Object myObj
Hello @myObj.name@

@myObj.values@
4

1 回答 1

2

您声明myObjObjectwhich 根本没有该value属性。

解决方案:

使您的 JSON 字符串如下所示:

{ 
name: "test", values: [ {id: 1}, {id: 2} ]
}

您的模板代码:

@args String name, Map[] values

Hello @name@

@for (Map v: values) {
  @v.get("id")
}

结果:

Hello test
 1
 2

在http://fiddle.rythmengine.com/上测试

于 2015-03-29T10:15:22.447 回答