查询Grails中的域类关联

时间:2014-09-25 17:22:52

标签: grails gorm grails-2.3

我有一些类似于以下的域类:

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个元素的列表,即使我知道表中有不相关的位置。

1 个答案:

答案 0 :(得分:2)

对于馆藏,您需要使用isEmpty()代替isNull()

Position.withCriteria { isEmpty('relations') }