【问题标题】:Grails Many-To-Many and One-To-Many clashGrails 多对多和一对多冲突
【发布时间】:2012-11-11 20:29:46
【问题描述】:

我有以下两个域类, 用户和帖子 我在他们之间有两种关系, 用户有一对多的帖子和反向引用。 用户与他关注的帖子具有多对多关系: 我得到的关系如下:

User {
hasMany = [posts : Post, followingPosts: Post]
belongsTo = [Post] //For the many-to-many, this is the owner i'd like to have.

}

Post {
  hasMany = [followers: User]
  belongsTo = [owner: User] //For the 1-to-Many, this is my back-reference
}

现在我遇到了与 Grails 的冲突,我尝试通过映射解决它但没有成功,这是我得到的错误:

    Domain classes [Post] and [User] cannot own each other in a many-to-many relationship. Both   contain belongsTo definitions that reference each other. (Use --stacktrace to see the full trace)

有人知道怎么解决吗?

【问题讨论】:

    标签: java grails grails-orm entity-relationship relationship


    【解决方案1】:

    我认为您可以使用 ma​​ppedBy 来做到这一点,例如:

    class User{
    
      static hasMany = [posts : Post, followingPosts: Post]
      static mappedBy = [posts : "user"]
    }
    
    
    class Post{  
    
      User user
      static hasMany = [followers: User]
      static belongsTo = User
    }
    

    查看this 了解有关 ma​​ppedBy 的更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-13
      • 2012-05-30
      相关资源
      最近更新 更多