我有一个简单的场景,我使用g:paginate进行分页,但在它旁边我需要在实际页面旁边说“Page x of y”。例如,如果我在总共10页的第3页上,我想(显然除了3之外的页面将是链接):
Page 3 of 10 << 1 2 3 4 .. 10 >>
似乎没有办法开箱即用,我想知道是否有人曾经遇到过这个问题,或者想过某种方法将这些信息从标签中拉出来,就好像我制作了一个自定义的taglib,它从g:paginate中提取了适当的属性(就像一个想法),或任何其他解决方案也可以。
答案 0 :(得分:1)
假设您为视图提供总计数,并在控制器中分配params
max
和offset
值,我认为您将需要进行所有计算获取“x of total”消息。
基本上,生成“x of toal”的代码段是:
Page ${((params.offset as Long) / (params.max as Long)) + 1} of ${instanceTotal}
您可以将此分配给paginate标记中的prev
属性,但不幸的是,当您在第一页时,prev不显示。因此,我认为您最好在自定义标记中扩展此功能,或者使用paginate标记之外的上述代码段。