Grails 域类之间未定义所有者

Grails 域类之间未定义所有者,grails,many-to-many,grails-domain-class,Grails,Many To Many,Grails Domain Class,目前,我遇到以下错误: No owner defined between domain classes [class mp.ra.Classgroup] and [class mp.ra.Event] in a many-to-many relationship. 域类的设置如下:, 事件类: class Event { static hasMany = [classgroups:Classgroup] static belongsTo = [eventgroup:Eventgroup,cla

目前,我遇到以下错误:

No owner defined between domain classes [class mp.ra.Classgroup] and [class mp.ra.Event] in a many-to-many relationship.
域类的设置如下:, 事件类:

class Event {
static hasMany = [classgroups:Classgroup]
static belongsTo = [eventgroup:Eventgroup,classgroup:Classgroup]

static constraints = {
    eventgroup nullable:true
}
还有班级

class Classgroup {

static hasMany = [courses:Course,events:Event]

static constraints = {
    courses nullable:true
}
一个事件可以有多个类组,一个类组可以有多个事件。 我使用了“属于”属性,因此我不明白为什么会出现此错误

编辑:我更改了事件类,错误消失了,我不知道这是否是一个好的解决方案

class Event {

Eventgroup eventgroup


static hasMany = [classgroups:Classgroup]
static belongsTo = [Eventgroup, Classgroup]

static constraints = {
    eventgroup nullable:true
}

在Grails多对多映射中,我们应该在两个关联类之间定义一个所有者类。 正如您之前定义的:

belongsTo = [eventgroup:Eventgroup,classgroup:Classgroup] 
使用此GORM尝试在事件表下创建一个具有类组名称的列,但对于与类组的多对多关联,数据库应该假设有第三个表,以便为事件和类组之间的多对多关联提供多条记录。这样的错误也是如此

因此,稍后当你提到:

belongsTo = [Eventgroup, Classgroup] 
它的工作原理是它刚刚得到了所有者的信息。 所以这里Classgroup将是关联的所有者,因为事件属于Classgroup

希望这有帮助。谢谢