我有一个这样的名单:Grails的渲染列表
def bookList = Book.list()
,并希望呈现为XML/JSON,最好使用这种方法:
render Book.list() as XML
不过,我只想渲染特定该列表的字段,我们假设:field1
,field2
,field3
。其他无用的东西将不会显示。
我有一个这样的名单:Grails的渲染列表
def bookList = Book.list()
,并希望呈现为XML/JSON,最好使用这种方法:
render Book.list() as XML
不过,我只想渲染特定该列表的字段,我们假设:field1
,field2
,field3
。其他无用的东西将不会显示。
如果你的情况是很简单的,你可以只收集你所需要的,例如:
def output = Book.list().collect { [
field1: it.field1,
field2: it.field2,
field3: it.field3
] }
render output as XML
使用生成器(从唐的回答)是一个很好的解决方案,以及。
如果要关闭对XML输出的控制,应该使用Grails的XMLBUilder而不是as XML
。这里的an example,显示如何使用JSONBuilder,不含性能如class
,metaClass
等
向该例如需要产生XML而不是JSON唯一修改是实例化一个XMLBuilder
代替JSONBuilder
渲染的对象。