是否可以在grails / groovy中在运行时构造这样的查询?

假设我有:

def query = Person.where {
     age in 18..65
}

在运行时,我想增加权重为:
def query = Person.where {
     age in 18..65
     weight in 100..200
}

可能吗?

最佳答案

我会改用Criteria Queries。它们使您可以轻松轻松地动态构建查询。例如,您可以创建如下条件:

def result = Person.createCriteria {
    'in'("age", [18..65])

    if (params.includeWeight) {
        'in'("weight", [100..200])
    }
}.list()

关于grails - 在运行时构造Grails/Groovy进行查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20056570/

10-11 22:25
查看更多