Hibernate Grails映射问题-多对多

Hibernate Grails映射问题-多对多,hibernate,grails,data-modeling,gorm,Hibernate,Grails,Data Modeling,Gorm,我有以下结构 class User{ List<Post> posts = new ArrayList<Post>(); static hasMany = [posts: Post] } 类用户{ List posts=new ArrayList(); static hasMany=[posts:Post] } class Post{ 用户用户 List subscribers=new ArrayList(); 静态belongsTo=[用户:用户] sta

我有以下结构

class User{
  List<Post> posts = new ArrayList<Post>();
  static hasMany = [posts: Post]
}
类用户{
List posts=new ArrayList();
static hasMany=[posts:Post]
}

class Post{
用户用户
List subscribers=new ArrayList();
静态belongsTo=[用户:用户]
static hasMany=[订阅者:用户]
} 
它表明

原因: org.codehaus.groovy.grails.exceptions.GrailsDomainException:无所有者 在域中的域类[class User]和[class Post]之间定义 多对多关系。示例:static belongsTo=Post

  • 一个用户可以有多个帖子
  • 帖子属于用户
  • 一篇文章可以有多个订阅者

Grails版本1.3.7

我也遇到了同样的问题,这意味着在相同的两个类之间创建多对多关系和1对多关系

方法如下:

用户类:

class User{

  static hasMany = [createdPosts: Post, subscribedToPosts : Post]
  static mappedBy = [createdPosts : "creator"]
}
class Post{  

  User creator
  static hasMany = [subscribers: User]
  static belongsTo = User
}
后课堂:

class User{

  static hasMany = [createdPosts: Post, subscribedToPosts : Post]
  static mappedBy = [createdPosts : "creator"]
}
class Post{  

  User creator
  static hasMany = [subscribers: User]
  static belongsTo = User
}

我在

中找到了答案,请不要对一次获取所有帖子发表评论。是的,这个答案应该会解决这个问题。还要注意的是,文档中(模糊地)提到了这一点