Grails belongsTo 允许一个 域类 与另一个域类建立级联关系。使用 belongsTo 时有两种关系样式: 引用 无引用 。 Reference 在拥有的对象上创建一个属性,而 No Reference 仅建立一个不可见的 GORM 关系。

父域类示例:

class Car {
    Engine engine
}

belongsTo 没有引用属性:
class Engine {
    static belongsTo = Car
}

belongsTo 带有引用属性:
class Engine {
    static belongsTo = [car:Car]
}

不是很难,但是当我们开始使用多个belongsTo引用时,我的麻烦开始了:

belongsTo 带有多个反向引用 :
class Engine {
     static belongsTo = [car:Car, user:User]
}

多个 belongsTo 关系,没有属性引用 :
class Engine {
     static belongsTo = [Car, User]
}

问题来了, 如何混合上述两种风格?

假设我想要 User 的属性引用而不是 Car ,我将如何编写 belongsTo 调用?

有关如何在单个域类中混合无引用关系链接与引用属性的任何信息都会有所帮助。

链接:
  • Using Grails Object Relational Mapping (GORM)
  • belongsTo - grails.org
  • This question reposted by me on the official Grails forum
  • 最佳答案

    class Engine {
         User user
         static belongsTo = [Car, User]
    }
    

    也就是说,我总是在列表(无引用)语法上使用映射(引用)语法,因为我喜欢我的双向语法。

    关于grails - 如何在一个域类中混合 'Reference' 和 'No Reference' 属于关系?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5914951/

    10-11 18:41