我使用grails在我的项目中使用分页实现搜索功能。使用以下代码,我可以看到第一个resultSet,其中max = 5,但是当我点击“next”时,它不会返回任何数据。
以下是代码段: 控制器代码:
List <SearchCommand> empDetailsList = searchService.searchEmployee(searchCommand)
服务代码:
def userlist = criteria.list(max:searchCommand.max, offset:searchCommand.offset){
userProfiles {
like ('firstName', "${searchCommand.firstName}%")
like ('lastName', "${searchCommand.lastName}%")
}
employees {
like ('employeeNum', "${searchCommand.employeeNum}%")
like ('payeNum', "${searchCommand.payeNum}%")
}
}
List <SearchCommand> searchCommandList = new ArrayList<SearchCommand>()
for(userObject in userlist) {
SearchCommand searchCommandObj = new SearchCommand()
def user = userObject as SchemeUser
UserProfile userprofile = UserProfile.findBySchemeUser(user)
searchCommandObj.firstName = userprofile.firstName
searchCommandObj.lastName = userprofile.lastName
println "userprofile.firstName : " + userprofile.firstName
Employee emp = Employee.findByUser(user)
searchCommandObj.employeeNum = emp.employeeNum
searchCommandObj.payeNum = emp.payeNum
searchCommandList.add(searchCommandObj)
}
return searchCommandList
我在gsp中使用 empDetailsList 进行分页。
我需要修复什么才能让gsp在点击“下一步”时正确显示分页结果?
答案 0 :(得分:1)
我认为缺少paginate标签lib的总参数。检查您是否为此标记属性使用了正确的值。
<g:paginate controller="ctrl" action="list" total="${totalValue}"/>
您还可以控制传递给控制器的最大值和偏移值。 furhtermore我还可以控制为分页链接生成的max和offset url参数(1,2,... previous,next,...)。