gpt4 book ai didi

grails - Gorm更改主键,未找到ID为null

转载 作者:行者123 更新时间:2023-12-02 14:02:57 26 4
gpt4 key购买 nike

我已经阅读了很多有关此的问题,似乎没人能正常工作。

我正在使用grails,并且正在创建一个没有id作为主键的类。

我收到消息“找不到ID为null的usuario”。这是我的域类的代码:

    class Usuario implements Serializable{ 

String nombre
String celular
String telefono
String apellido
String password
String nick

static mapping = {
table 'Usuarios'
version false
id composite: ['nick']
}
}

我还尝试了以下正常方法:
    static mapping = { 
table 'Usuarios'
version false
id name: 'nick'
}

它实际上使用自然键和所有内容按照我想要的方式映射表,它插入了新的用法,但是gui无法检索任何对象并显示错误:“未找到id为null的usuario”

我试图修改show(Long id)方法,但也无济于事,这是我从 Controller 获取的show方法:
    def show(String nick) {
def usuarioInstance = Usuario.get(nick)
if (!usuarioInstance) {
flash.message = message(code: 'default.not.found.message', args: [message(code: 'usuario.label', default: 'Usuario'), nick])
redirect(action: "list")
return
}

[usuarioInstance: usuarioInstance]
}

最佳答案

您需要指定分配给生成器的:

static mapping = {
...
id column: 'nick', generator: 'assigned'
}

另外,添加以下约束可能是明智的:
static constraints = {
nick blank:false, nullable:false, unique: true
}

关于grails - Gorm更改主键,未找到ID为null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13507501/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com