Grails DetachedCriteria Eq忽略大小写

时间:2013-10-16 13:46:08

标签: grails detachedcriteria

使用Grails 2.3.0:根据文档:http://grails.org/doc/latest/ref/Domain%20Classes/createCriteria.html

可以使用第三个参数Eq创建不区分大小写的[ignoreCase: true]条件。像这样:

eq(field, string, [ignoreCase: true])

然而,这会引发错误:

No signature of method: grails.gorm.DetachedCriteria.eq() is applicable for argument types: (java.lang.String, java.lang.String, java.util.LinkedHashMap) values: [xx, yy, [ignoreCase:true]]
Possible solutions: eq(java.lang.String, java.lang.Object), get(), grep(), any(), ge(java.lang.String, java.lang.Object), gt(java.lang.String, java.lang.Object). Stacktrace follows:

This Jira表示MongoDB存在问题。我正在使用Oracle 11G,我遇到了完全相同的事情。

文档中的操作是否真的得到支持(查看代码,看起来不像......)?这对于DetachedCriterias是否也不起作用(在文档中找不到...)?。

Codesnippet:

public DetachedCriteria createCriteriaForArbejdssted(SoegeCommand command, DetachedCriteria criteria) {
    criteria = criteria.build {
        if(command.harArbejdsstedskriterier()) {
            'arbejdsstedsPerioder' {
                'arbejdssted' {
                    if(command.arbejdsstedsnavn) { eq('navn', command.arbejdsstedsnavn, [ignoreCase: true])}
                }
            }
        }
    }

0 个答案:

没有答案