我有一個grails web應用程序的列表函數。此列表將根據一些搜索條件填充表格。我使用Hibernate的createCriteria來嘗試實現這一點。grails list and createCriteria()
在這種情況下,他們可以通過2個不同的關鍵功能進行搜索。用戶名和用戶號碼。
我唯一的問題是試圖調整函數,以便如果它找到一個空值,它會提示用戶其中一個值爲空。用戶名必須有一個用戶號碼。如果由於某種原因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的源代碼。
如果有人知道我可以如何使用搜索條件或其他方法實現我的目標。我將不勝感激一些建議。
感謝
非常感謝您的回答。它幫助我解決了我的問題! – CoffeePeddlerIntern