这就是我想要做的事情:
class Test {
String name
static mapping = {
name defaultValue: "test_${Test.count()}"
}
}
所以当一个新的"测试"创建对象的名称为test_1,test_2,test_3等,具体取决于已存在的测试对象的数量。上述方法不起作用,因为" test.count在Grails应用程序之外使用"
答案 0 :(得分:1)
您可以初始化属性,而不是通过映射闭包指定值。
class Test {
String name = "test_${Test.count()}"
}
或
class Test {
String name = initName()
private static String initName() {
def count = Test.count()
return "test_" + count
}
}