2011-07-21 2 views
0

Iam implémentant la fonctionnalité de recherche avec pagination dans mon projext en utilisant des grails. Avec le code suivant je peux voir le premier resultSet avec max = 5, mais quand je clique sur "suivant" il ne renvoie aucune donnée.La liste paginée de grails ne fonctionne pas correctement

Ci-dessous est extrait de code: Code Controller:

List <SearchCommand> empDetailsList = searchService.searchEmployee(searchCommand) 

Code de service:

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 

Iam utilisant empDetailsList dans gsp pour la pagination.

Que dois-je corriger pour que le gsp affiche correctement le résultat avec pagination en cliquant sur 'Suivant'?

Répondre

1

Je pense que le paramètre total pour l'étiquette de pagination lib est manquant. vérifiez si vous utilisez la bonne valeur pour cet attribut d'étiquette.

<g:paginate controller="ctrl" action="list" total="${totalValue}"/> 

Vous pouvez également contrôler vos valeurs max et offset transmises au contrôleur. En outre, je peux aussi contrôler les paramètres url max et offset générés pour les liens paginés (1,2, ... précédent, suivant, ...).

Questions connexes