0

有一个域类,其字段id由 Grails 注入。用地图实例化这样的类会导致id == null

def obj = DomainClass.class.newInstance(id:100, name:'Joe')
assert obj.id != null // it fails

在 Grails 中分配所有隐藏属性的最佳实践是什么?

4

1 回答 1

1

您可以自定义 GORM 如何使用 DSL 为数据库生成标识符。默认情况下,GORM 依赖于本地数据库机制来生成 id。检查文档以自定义域类标识符的生成方式

static mapping = {
    id generator: 'assigned'
}

分配生成器时,构造函数上的 id 初始化存在一个错误,请查看此博客文章,其中包含此错误的临时解决方法: 通过构造函数为 Grails 中的域对象分配 ID

于 2012-11-08T12:35:16.190 回答