我是一个Grails新手,尝试使用Grails文档中找到的分页标签,我在我的index.gsp页面中有一个搜索表单。
我不知道如何传递params.max和params.offset参数,因为我只使用了一个名为index的操作。
我有一个包含查询以列出一些书籍的index操作:
这是我 index.gsp 中的 paginate 标签:
我不知道如何传递params.max和params.offset参数,因为我只使用了一个名为index的操作。
我有一个包含查询以列出一些书籍的index操作:
params.max = 10
params.offset = 0
def author=params.author // i get the input search params
def max = 10
def offset = 0
if(params.max){
max = params.max
}
if(params.offset){
offset = params.offset
}
def bookPagin=Book.createCriteria().list {
eq("author", author)}
maxResults(max)
firstResult(offset )
}
这是我 index.gsp 中的 paginate 标签:
<g:paginate controller="displayBook" action="index" total="${bookPagin.size()}" params="[author:author]"/>
现在这段代码显示了前10个结果,但是当我点击第二页时,它没有使用输入的作者参数,尽管我在GET请求中传递了作者参数,是否有其他解决方案?
model
属性的控制器方法的其余部分,所以最好检查一下author
是不是正确的变量名——我通常使用[author:params.author]
。顺便说一句,如果action
和controller
属性与当前页面相同(通常是这样),则可以省略它们。 - nickdos