如何将属性添加到地图?

zor*_*119 1 grails groovy

我有一个域类:

class Person {
    String name
    Boolean likesGrails
    Boolean isSmart
}
Run Code Online (Sandbox Code Playgroud)

并希望在将数据friend传递给视图(friend用于决定内容)之前预处理数据(创建新属性):

def people = Person.list()
people.each {
    it.friend = likesGrails && isSmart
}
Run Code Online (Sandbox Code Playgroud)

我如何添加此friend属性?上面的代码不起作用(它抱怨it.friend不存在).

tim*_*tes 6

你应该只能添加:

static transients = [ 'friend' ]
public boolean isFriend() {
  likesGrails && isSmart
}
Run Code Online (Sandbox Code Playgroud)

到您的域类,然后person.friend在您的视图中访问