Grails 关系不保存
Grails relationship not saving
我有以下设置:
class Parent {
static hasMany = [ children: String ]
}
class ParentController {
def create() {
Parent entry = params.id ? Parent.load(params.id as long) : new Parent()
entry.properties = params
if (request.method == "POST") {
if (entry.validate()) {
entry.save()
assert !entry.hasErrors()
println entry.children // prints [two, one]
println Parent.load(entry.id).children // prints []
redirect(action:'index')
return
}
}
return [
entry: entry,
entities: ["one","two"]
]
}
}
为什么 children 没有和 parent 一起保存?
(我也尝试将 children 设为另一个域 object,但这没有任何区别)
虽然我不确定究竟是什么解决了我的问题,但将 save()
更改为 save(flush: true)
让我看到了 Hibernate 抛出的异常。
我有以下设置:
class Parent {
static hasMany = [ children: String ]
}
class ParentController {
def create() {
Parent entry = params.id ? Parent.load(params.id as long) : new Parent()
entry.properties = params
if (request.method == "POST") {
if (entry.validate()) {
entry.save()
assert !entry.hasErrors()
println entry.children // prints [two, one]
println Parent.load(entry.id).children // prints []
redirect(action:'index')
return
}
}
return [
entry: entry,
entities: ["one","two"]
]
}
}
为什么 children 没有和 parent 一起保存?
(我也尝试将 children 设为另一个域 object,但这没有任何区别)
虽然我不确定究竟是什么解决了我的问题,但将 save()
更改为 save(flush: true)
让我看到了 Hibernate 抛出的异常。