我有以下结构
class User{
List<Post> posts = new ArrayList<Post>();
static hasMany = [posts: Post]
}
class Post{
User user
List<User> subscribers = new ArrayList<User>();
static belongsTo = [user: User]
static hasMany = [subscribers: User]
}
并显示
引起: org.codehaus.groovy.grails.exceptions.GrailsDomainException:没有所有者 在域类[class User]和[class Post]之间定义 多对多的关系。示例:static belongsTo = Post
版Grails 1.3.7
答案 0 :(得分:5)
我遇到了同样的问题,这意味着创建了多对多关系以及同一两个类之间的1对多关系。
这样做的方法如下:
用户类:
class User{
static hasMany = [createdPosts: Post, subscribedToPosts : Post]
static mappedBy = [createdPosts : "creator"]
}
发布课程:
class Post{
User creator
static hasMany = [subscribers: User]
static belongsTo = User
}
中找到了答案