在grails 2.0.4中,我有一个像这样的域类:
class Foo {
String pres
String temp
static transients = ['temp']
def beforeInsert = {
println "pres: ${pres}"
println "temp: ${temp}"
}
}
在BootStrap.groovy中:
def f1 = new Foo(pres: "p1", temp: "t1")
f1.save()
def f2 = new Foo(pres: "p2")
f2.temp = "t2"
f2.save()
然后grails run-app,我得到了:
pres: p1
temp: null
pres: p2
temp: t2
f1和f2之间的区别是什么,不能初始化瞬态成员?
答案 0 :(得分:1)
bindable
constraint允许您覆盖默认行为。它通常用于禁用通常可以在默认情况下绑定的属性的数据绑定,但我相信你也可以使用它来反过来。
答案 1 :(得分:0)
升级到Grails 2之后我遇到了同样的事情。如果你想了解更多信息,请参阅这两个JIRA条目:
http://jira.grails.org/browse/GRAILS-8972
http://jira.grails.org/browse/GRAILS-9098
但是,最终,我不得不采用你在你的例子中所做的同样的工作。