我正在将Grails 2应用程序升级到3.3.10,我们有很多未调用的自定义吸气剂。许多人都有可空值的后备逻辑。
Color getFavColor(){
if(!favColor){
return "black"
}
return favColor
}
进入代码似乎HibernateUtils正在直接访问该属性,无论如何我都找不到解决方法?def propertyValue = reflector.getProperty(thisObject, propertyName)
1)我缺少快速修复程序吗?
2)这里理想的模式是什么?我是新手,想知道是否应该将类似的逻辑移至服务。
Grails 3.3.10 |休眠5 | Gorm 6.1.12.RELEASE
[令我感到有些惊讶的是,它在Grails 2中起作用(可能是因为静态类型的return?),但是,您需要使用Groovy的direct field access operator, @
来访问getter内部的基础字段。
@
作为旁注,我将其简化为这一衬里。您要依靠从字符串Color getFavColor() {
if (!this.@favColor) {
return "black"
}
return this.@favColor
}
到"black"
的自动转换吗?
Color