我正在使用 grails 3.1.4 运行,并且无法创建允许我将多个域对象绑定到其他几个域对象的模式。作为我正在尝试做的一个例子:
我有三个班。书籍、作者和阅读清单。
作者本可以写很多书。书籍可以由多个作者撰写。此外,阅读列表由几本书组成,书籍可以是多个阅读列表的一部分。我应该如何为此创建域?
我尝试将它们设置如下:
class Author {
Long id
String firstName
String lastName
static hasMany = [books: Book]
}
class ReadingList {
Long id
String name
static hasMany = [books: Book]
}
class Book {
Long id
String title
Integer pageCount
static belongsTo = [author: Author, readingList: ReadingList]
static hasMany = [authors: Author, readingLists: ReadingList]
}
编译时,我收到此错误:
No owner defined between domain classes
[class firstapp.ReadingList] and [class firstapp.Book] in a many-to-many relationship.
我尝试将我的 belongsTo 值更改为与 hasMany 完全相同,映射键是复数动词,但这似乎也不起作用。关于我如何做到这一点的任何想法?
谢谢