grails中不区分大小写的搜索
Posted
技术标签:
【中文标题】grails中不区分大小写的搜索【英文标题】:Case insensitive search in grails 【发布时间】:2010-10-13 12:51:53 【问题描述】:我正在开发使用文件搜索的 grails 应用程序。为此,我编写了以下代码。这段代码有效,它给出了区分大小写的结果。但我想搜索不区分大小写的文件。
def criteria = FileDomain.createCriteria()
def results = criteria
and
like('user', User.findById(session?.user))
or
like('filename', '%' + params.fileSearchKey + '%')
like('referenceFilename', '%' + params.fileSearchKey + '%')
谁能提供这方面的帮助?
【问题讨论】:
【参考方案1】:我相信使用
ilike('filename', "%$params.fileSearchKey%")
ilike('referenceFilename', "%$params.fileSearchKey%")
这就是你应该做的case insensitive搜索
【讨论】:
【参考方案2】:在 Grails 2.x 中执行此操作的一种方法是使用 the eq node:
eq("branch", "london", [ignoreCase: true])
【讨论】:
奇怪...我得到 groovy.lang.MissingMethodException:没有方法签名:eq() 适用于参数类型:(java.lang.String, java.lang.String, java .util.LinkedHashMap) 这是在 Grails 2.5.0 中。最后没有地图,它工作正常。以上是关于grails中不区分大小写的搜索的主要内容,如果未能解决你的问题,请参考以下文章