【问题标题】:Query domain class associations in Grails在 Grails 中查询域类关联
【发布时间】:2014-09-25 17:22:51
【问题描述】:

我有几个类似于以下的域类:

class Position {
    String code
    String title

    static hasMany = [relations: Relation]
}

class Unit {
    String code
    String title

    static hasMany = [relations: Relation]
}

class Relation {
    Position position
    Unit unit

    static belongsTo = [
        position: Position,
        unit: Unit
    ]
}

我正在尝试使用标准来查找所有有任何关系的职位。我知道这可以使用 HQL 解决,但我发现在构建动态标准与构建动态 HQL 字符串时标准更清晰。

有没有办法使用标准来做类似的事情:

Position.withCriteria { isNull('relations') }

我已经尝试了上述方法,但我总是得到一个包含 0 个元素的列表,即使我知道表中有不相关的位置。

【问题讨论】:

    标签: grails grails-orm grails-2.3


    【解决方案1】:

    对于集合,您需要使用isEmpty() 而不是isNull()

    Position.withCriteria { isEmpty('relations') }
    

    【讨论】:

    • 哇。我花了几个小时在这上面,它是如此简单。非常感谢。
    • 不用担心。很高兴能提供帮助。
    猜你喜欢
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-23
    • 2011-01-04
    • 1970-01-01
    • 2023-04-02
    • 2012-09-06
    相关资源
    最近更新 更多