Grails - createCriteria:associations + not + ilike

时间:2015-03-03 10:41:16

标签: grails createcriteria

一些标准如何:关联+不是+ ilike没有给出好的结果。 我仍然会得到具有我不希望在结果中显示状态的操作的案例。 有关其他方法的任何线索或建议吗?

我在控制器中有这个:

def pgp = [:]
pgp.max = params.max?.toInteger() ?: 20;
pgp.offset = params.offset?.toInteger() ?: 0
pgp.max = 20;
def result = Case.createCriteria().list(pgp) {
        actions {
            not {
                and {
                    ilike("status","%CLOSED")
                    ilike("status","%Installed in PRD")
                }
            }
        }
}

这是相关的域剪辑:

class Case {

String caseCode
String caseName
String caseType

static hasMany = [ actions : Action ]

我正在使用Grails 2.4.4

1 个答案:

答案 0 :(得分:1)

您的布尔逻辑有问题 - and应该是or。您当前的测试对于 {/ 1}}的每个可能值都是正确的,因为通过status的任何值都将失败ilike("status","%CLOSED"),反之亦然。