gpt4 book ai didi

grails - 我在 GORM 中的 id

转载 作者:行者123 更新时间:2023-12-03 12:45:40 25 4
gpt4 key购买 nike

我试图更改 grails 中的标准“id”:

calls Book {
String id
String title

static mapping {
id generator:'assigned'
}
}

不幸的是,我很快注意到这打破了我的引导。代替
new Book (id:'some ISBN', title:'great book').save(flush:true, failOnError:true)

我不得不使用
def b = new Book(title:'great book')
b.id = 'some ISBN'
b.save(flush:true, failOnError:true)

否则我会得到一个“必须在调用 save() 之前手动分配此类的 ID”错误。

但到目前为止还可以。

然后我在 bookController 的保存操作中遇到了同样的问题。但这一次,变通方法没有奏效。

有什么建议么?

我知道,我可以重命名 id,但随后我将不得不更改所有脚手架 View ......

最佳答案

我无法复制这个问题(使用 Grails 2.0.RC1)。我认为这可能就像您的静态映射 = { 上缺少等号一样简单(您只有静态映射 {)

这是域对象的代码:

class Book {
String id
String name

static mapping = {
id generator:'assigned'
}
}

在 BootStrap.groovy 内部:
def init = { servletContext ->
new Book(name:"test",id:"123abc").save(failOnError:true)
}

它对我来说很好。我看到 id 为 123abc。

关于grails - 我在 GORM 中的 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7919634/

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