2011-07-01 6 views
0

私はクライアント側にボタンを持っています。私が押すと、サーバ上で何らかのアクションを実行してから、リストメソッドを再度呼び出します。すべてうまくいきますが、3ページ目にあるアイテムをクリックすると、ページが更新されると1ページ目に移動します。どのページが表示されているのかわかりません。ページ番号を維持する方法はありますか?要求数を超えてページ番号を維持する

答えて

5

offsetmaxのパラメータをリクエストする必要があります。あなたがそれを使用している場合は、リンクタグで現在のparamsを渡すことができます。

<g:link action="myAction" params="${[offset: params.offset, max: params.max]}"/> 

あなたが<g:link>を使用していない場合、あなたは自分のhrefに彼らにクエリパラメータを行うことができます。

<a href="/path/to/action?max=${params.max}&offset=${params.offset}">Link</a> 

これらのパラメータはコントローラ内の.list()メソッド(例:.list(params))にする必要があります。

結果ビューをレンダリングするアクションにパラメータが設定されている限り、<g:paginate>タグはそれらを取得し、ページネーションリンクを正しくレンダリングします。

+0

感謝のparamsとしてあなたのページにリダイレクトするコントローラから

<g:link action="myAction" params="${[offset: params.offset, max: params.max]}"/> 

返すのparamsとしてのparamsを渡すことができます... – allthenutsandbolts

0

あなたが戻ってあなたが働い

e.g redirect (action: 'myAction', params: [max: params.max, offset: params.offset]) 
関連する問題