我有一个 grails web 应用程序的列表功能。此列表将根据某些搜索条件填充表格。我使用 hibernate createCriteria 来尝试实现这一点。
在这种情况下,他们可以通过 2 个不同的关键特征进行搜索。用户名和用户编号。
我唯一的问题是尝试定制函数,以便如果它找到一个空值,它将提示用户其中一个值为空。用户名必须有一个用户编号。如果由于某种原因 userNumber 出现 null 那么它需要提示用户。或者如果没有找到用户名和userNumber的组合,也会提示用户。
这是我的带有搜索条件的列表功能。底部的 println 用于调试,并显示了我想要做什么。
def list(params) {
//TODO STILL NOT WORKING RIGHT
def userSearchCri = User.createCriteria()
def userNumber = params.searchUserNumber
def username = params.searchUsername
uerSearchCri = User.createCriteria()
def userList = userSearchCri.list() {
eq('username', username)
eq('userNumber', userNumber)
}
System.out.println("Search: " + userList.userNumber)
if(userList.userNumber == "null"){
System.out.println("OH NO! The Users Number is = " + userList.userNumber + " DO SOMETHING!")
}
[userInstanceList: userList]
}
Iv 尝试了 createCriteria 函数的不同组合。像 isNotNull、ilike 等等……我开始认为我不能用 createCritera 做到这一点。这是我用于 createCriteria http://grails.org/doc/2.2.1/ref/Domain%20Classes/createCriteria.html的源代码。
如果有人知道我如何能够使用搜索条件或其他方法来实现我的目标。我将不胜感激一些建议。
谢谢