【发布时间】:2013-08-21 02:18:17
【问题描述】:
我正在尝试在 Grails 中创建双向多对一关系,并在两个方向上进行非级联删除。我的域名如下所示:
class Asset {
static hasMany = [ hosts: Host ]
static mapping = {
hosts cascade: 'save-update'
}
}
class Host {
Asset asset
}
这在删除主机时工作正常(资产仍然存在),但是当我尝试删除资产时,我从数据库中收到完整性约束错误。我尝试将 Host 类定义更改为使用 belongsTo,但无法使其正常工作。任何帮助都会很棒!谢谢!
【问题讨论】:
-
你用的是什么数据库?
-
尝试在
Host的asset属性上添加nullable: true? -
我在本地开发人员上使用 hsqldb。我将其设置为 nullable:true 并且无法弄清楚为什么我仍然收到错误..
-
您是否尝试删除“主机级联:'save-update'”并添加belongsTo?
-
我尝试在 Host 上添加 belongsTo[asset:Asset] 并删除 Asset 中的级联定义,但在尝试删除 Asset 时仍然收到错误消息。
标签: hibernate grails grails-orm