grails - 如何在grails中将ilike与Integer一起使用

标签 grails groovy

我使用EasyGrid插件,必须在整数字段(例如'%001%')中找到值

initialCriteria {
    ilike('id', "%"+params.id+"%")
}

但是,我不喜欢Integer。怎么做?

我试着做:
    initialCriteria {
        ilike('id'.toString(), "%"+params.id+"%")
    }

    initialCriteria {
        ilike('str(id)', "%"+params.id+"%")
    }

但这是行不通的。

最佳答案

如果id是数据库中的整数,则ilike并没有多大意义,并且可能有一种更好的方法来执行您要执行的操作(例如,将类型字段或某些内容添加到域对象中,然后按类型进行过滤)

但是,您应该可以执行以下操作(未测试):

initialCriteria {
    sqlRestriction "cast( id AS char( 256 ) ) like '%001%'"
}

关于grails - 如何在grails中将ilike与Integer一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22912640/

相关文章:

java - 将对象属性复制到 Groovy 中的另一个对象

groovy - 为什么我的gradle脚本中出现 “connot be applied to ' Closure'”警告?

grails - 如何在grails中使用 Assets 管道插件将js最小化到一个文件

grails - grails 3创建子项目

java - 导出到 XLSX,其中页面还应包含标题

Java/Groovy String.Format 如何处理要格式化的字符串中的运行时%

hibernate - Grails 2.4.4 完全忽略提取 :'join' *使用 PostgreSQL 时*

jquery - 隐藏参数网址(jQuery和Grails)

grails - 从哪里可以下载Grails 1.1?

Grails[Groovy],如何获取一个类没有继承的所有方法的列表?