您好我在grails应用程序中有2个域名,这是相关的,当我尝试删除项目时,我遇到了问题。
Event {
String eventName;
Date eventDate;
Fee eventFee ;
constraints = {
....
eventFee(nullable:true);
}
}
和
Fee{
String feeName ;
.....
}
我的问题是当我试图删除费用时,即使没有附加的事件,它也会引发en erorr:ConstraintException。
如何解决问题以及如何在这两个域之间建立链接?
ps:我使用的是grails 1.2xxx和数据库mysql
答案 0 :(得分:1)
这可能是因为某些Event对象引用了您尝试删除的Fee对象。您可以通过以下(伪)代码查看事件:
def fee = Fee.get(<id>)
Event.findAllByEventFee(fee).each {
println it
}
然后,您可以为每个事件将eventFee设置为null并删除费用:
event.eventFee = null
fee.delete()
答案 1 :(得分:0)
我认为这种关系是错误的,你应该参考费用
Event {
String eventName;
Date eventDate;
static hasOne=[eventFee:Fee] ;
constraints = {
....
}
}
和
Fee{
String feeName ;
.....
}