我正在尝试在两个嵌套对象上使用带有OR的createCriteria。

这是我正在使用的代码:

or {
  ordersSecondaryReceptionSystem {
    eq('code', params.receptionSystemCode)
  }
  ordersReceptionSystem {
    eq('code', params.receptionSystemCode)
  }
}

仅考虑了两个之一,第二个。
有什么我想念的吗?

最佳答案

我可以通过创建别名来修复它:

createAlias('ordersReceptionSystem', 'ordersReceptionSystem', Criteria.LEFT_JOIN)
                    createAlias('ordersSecondaryReceptionSystem', 'ordersSecondaryReceptionSystem', Criteria.LEFT_JOIN)
                    or {
                        eq('ordersReceptionSystem.code', params.receptionSystemCode)
                        eq('ordersSecondaryReceptionSystem.code', params.receptionSystemCode)
                    }

关于grails - 或条件Grails嵌套对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55247464/

10-09 16:11