我正在使用具有生成标识的域类:
class User {
...
static mapping = {
id generator: 'assigned', name: 'uid'
}
Long uid
...
}
但是当我尝试使用检索实例时
User.get(1)
它返回空值。如果我使用它确实有效
User.findByUid(uid)
生成 id 时不能使用 Domain.get 或 Domain.read 吗?
我正在使用具有生成标识的域类:
class User {
...
static mapping = {
id generator: 'assigned', name: 'uid'
}
Long uid
...
}
但是当我尝试使用检索实例时
User.get(1)
它返回空值。如果我使用它确实有效
User.findByUid(uid)
生成 id 时不能使用 Domain.get 或 Domain.read 吗?
即使分配了您的 id,也无需声明该属性。
class User {
static mapping = {
id generator: 'assigned' column: 'uid'
}
}
这里的关键是映射数据库中的列名。
除了塞尔吉奥的回答
该generator
策略assigned
意味着应用程序assign
在保存对象时必须有一个 id。如果您在下面做了类似的事情,那么您应该能够得到,User.get(1)
否则在保存时会引发异常而不分配id
def user = new User(id: 1).save(flush: true)