Grails g:paginate - 将搜索参数传递回Controller

Gar*_*wis 6 grails pagination get

我已经构建了一个高级搜索选项,允许用户搜索多个不同的字段 - 总共38个可能的字段.

提交初始搜索后,将显示10个结果,底部带有分页选项(使用grails' <g:paginate>标记).

我想我在这里遇到了一些问题.

1)我需要以某种方式使用标签的params属性将字段传回控制器g:paginate,但我真的不想创建40个参数的参数.

2)我从Controller传回一个搜索参数的页面(这样他们可以有一个可忽略的参数列表,在没有dismissed参数的情况下再次执行搜索).我可以在params属性中传回这个,但是它作为a String而不是传递回控制器map我不知道如何遍历它(我在迭代通过每个单独的角色后意识到这一点!).

3)g:paginate标签创建的链接的URL 可能很大,具体取决于用户输入的搜索字段的数量.URL是否有超过最大金额的危险?

我正在考虑改变内置的grails paginate功能,并创建一个我可以POST的表单.我不确定这是否是最好的方式,我可能会错过一些替代方法,这样做会好得多.

任何帮助大大收到!

MKB*_*MKB 8

您可以使用pageScope.variableslike 将所有参数传递给action

<g:paginate params="${pageScope.variables}" total=.../>
Run Code Online (Sandbox Code Playgroud)