我想知道是否可以在没有级联删除的情况下以双向 1:N 关联删除父对象。根据
http://grails.org/doc/1.0.x/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html
...在单向关系中,父端映射为“保存更新”,子端映射为“无”。我已经为双向关系尝试了这些设置,但并不奇怪它不起作用。具体来说:
class Personnel {
...
}
static hasMany = [projectlead:Project, projectmanager:Project]
static mappedBy = [projectlead:'leaddeveloper', projectmanager:'projectmanager']
static mapping = {
projectlead cascade:'save-update'
projectmanager cascade:'save-update'
}
这是项目类:
class Project {
...
}
static belongsTo = [leaddeveloper:Personnel, projectmanager:Personnel]
static mapping = {
leaddeveloper cascade:'none'
projectmanager cascade:'none'
}
如果有解决方案,我宁愿不重新设计我的应用程序(通过从 Project 类中删除“belongsTo”):两端的导航访问非常方便,并且我在项目端没有太多实例。
另外,如果有办法实现这一点,那么知道这些活动映射之后会发生什么会很有趣,我可以将它们(或将它们设置)设置为“null”吗?
感谢有关此问题的任何意见。