grails - 如何从createCriteria中区分列表?

标签 grails createcriteria

我有一个问题..以区分我的 list ..这是我的代码..

域:

class City {
    String city
    static constraints = {
        city(blank:false,unique:false)
    }
}

class Financial {
    String financial
    String description
    static constraints = {
        financial(blank:false,unique:false)
    }
}

class Bank {
    Financial financial
    City city
    static constraints = {
        financial(blank:false)
    }
}

我想使用以下代码从域银行创建列表:
def index= {
        params.max = Math.min(params.max ? params.int('max') : 10, 100)

        if(!params.sort && !params.order)
        {
            params.sort = "city"
            params.order = "desc"
        }
        def c = Bank.createCriteria()
        def results = c.list(params)
        {
            if(params.financial)
            {
                financial{                  
                    ilike("financial", "%${params.financial}%")s
                }   

            }

        }

        [bankdetaillist: results,bankdetaillisttotal:results.totalCount, financial: params.financial?:""]
    }

如果我创建一个银行,例如..
Table bank :

id | version | city | financial
-------------------------------
 0 |    0    |   1  |    1        
 1 |    0    |   5  |    1

从这个案例中,我们知道拥有金融1的银行有很多城市...

我想显示它以列出与现场财务不同的银行的方式。

最佳答案

对于您想要的内容,createCriteria似乎有点矫kill过正。关于什么:

Financial finRecord = Financial.findByFinancial(params.financial)
List<Bank> banksForFin = Bank.findAllByFinancial(finRecord,[sort: "city", order: "desc"])

关于grails - 如何从createCriteria中区分列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21980806/

相关文章:

grails - 与目标VM断开连接,地址: '127.0.0.1:57519',传输: 'socket' IntelliJ

grails - Gorm 投影和元信息丢失

hibernate - 从一级 hibernate Hibernate createCriteria JOIN,ORDER,DISTINCT

grails - 检索特定父级的子级以显示在选择的组件上

grails - 适用于Analytics(分析)库依赖的Google Reporting API

mysql - UTF-8 仅在 Grails 1.1 数据库表中

grails - 当前 Controller 中不存在 Controller 时,如何使用过滤器重定向到外部URL

grails - CreateCriteria-在hasMany关联中使用逻辑或

grails - 如何使用createCriteria比较收集项目?