【问题标题】:Is there a 'contains' functionality on a collection property of a domain object for createCriteria?createCriteria 的域对象的集合属性上是否有“包含”功能?
【发布时间】:2012-07-13 17:00:48
【问题描述】:

我有一个拍卖域对象和一个用户域对象。拍卖hasMany 用户。

我想做的事情,使用createCriteria,是这样的:

def c = Auction.createCriteria()
def l = c.list (max: maxVar, offset: offsetVar) {
    contains("users", thisUser)
}

虽然,contains 不在可接受的节点列表中:createCriteria description page

有没有办法实现这个功能?

需要明确的是,有没有办法让指定的用户对象包含在拍卖的集合属性中?

【问题讨论】:

    标签: grails createcriteria


    【解决方案1】:

    试试这个:

    def l = c.list (max: maxVar, offset: offsetVar) {
        users {
            idEq(thisUser.id)
        }
    }
    

    【讨论】:

    • 很好......你可以做到这一点并不明显,因为语法看起来像“必须有一个 id 是这个的 users 对象”,而不是“必须有一个用户集合,其中包含具有此 ID 的对象”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-23
    • 2017-05-16
    • 2012-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    相关资源
    最近更新 更多