2011-02-09 6 views
1

ページネーションタグ:
エラー処理GroovyPageView:タグ[のpaginate]で必要な属性[合計]で/ホーム/ user1の/ワークスペース/ ADM-アプリケーションサーバーマネージャーを逃します/grails-app/views/emailNotification/status.gsp:59Grailsの私は改ページ]ボタンをクリックしたときに、このエラーが発生しているエラー

と私のコードは次のとおりです。 GSPで:コントローラで

<div class="paginateButtons"> 
      <g:paginate total="${emailNotificationInstanceTotal}" /> 

</div> 

def status = { 
    [ 
     emailNotificationInstanceList:EmailNotification.findAllByStatus(EmailNotification.Status.Sent, params), 
     emailNotificationInstanceTotal:EmailNotification.countByStatus(EmailNotification.Status.Sent) 
    ] 
} 

私は合計属性に言及したが、このエラーは

+0

なぜdownvoting ??? – fabien7474

+0

コントローラのコードをすべて貼り付けてください。 – fabien7474

+0

def status = {[emailNotificationInstanceList:EmailNotification.findAllByStatus(EmailNotification.Status.Sent、params)、emailNotificationInstanceTotal:EmailNotification.countByStatus(EmailNotification.Status.Sent)]} –

答えて

2

コントローラが返品またはレンダリングでこのパラメータを返すことを確認してください。ソースコールが失敗した場合のために、コントローラまたはビューにデフォルト値を追加する必要があります。

<g:paginate total="${emailNotificationInstanceTotal?:0}" /> 

それとも

emailNotificationInstanceTotal: EmailNotification.countByStatus(EmailNotification.Status.Sent)?:0 
+0

私はあなたの答えを試します。エラーは表示されませんが、エラーは表示されませんが、結果は間違っています。なぜなら、2番目のページ区切りボタンをクリックすると、リストに空白が表示され、リストにはまだレコードがあるからです。あなたが望めば別の答えがありますか? –

+0

コントローラの2番目の呼び出しが、結果の次のページが最大またはオフセットのパラメータで渡されていないかのように聞こえます。右の結果セットがビューに戻ります。あなたのコントローラーアクションにprintlnを追加し、それらのパラメーターがアクションに戻ってきているかどうかを確認してください。 – JeffSea

+0

iコントローラーのアクションにprintlnを追加すると、それらのパラメーターによってアクションに戻ります –

0

問題は、あなたが、コントローラから送信されているか、この変数がされているとき値を検証する必要があるので、emailNotificationInstanceTotalがnullであることで表示される理由を私は知りませんnullではなく、0以上のint値を持つように定義されています。

+0

emailNotificationInstanceTotalに値があります26に等しい、私はgspコード

$ {emailNotificationInstanceTotal}

で書き込もうとすると、私はアプリケーション番号26を表示すると、データベースのレコードの数が表示されます。 –

+0

これは本当に奇妙です、私は合計値がnullまたは全く定義されていない場合にのみ、このエラーを受けました。 – Maricel

+0

合計値> 0の場合、このエラーは表示されませんが、合計値> 0のこのエラーが発生したのは初めてです。どうすれば解決するのか分かりません。 –

0

コントローラを再生成してください。私の場合は、ドメインクラス名を一度変更しましたが、私にこのエラーを引き起こしたコントローラーを再生成しないでください。

0

grailsPaginationTagは、特定のWebページでレンダリングするリストのページングを処理するために使用されます。

ここではOodles Technologiesで、Grails Developmentとの共同作業を行っています。

このプラグインの場合config.groovyファイルに1行追加するだけです。

コンパイル「:リモート・ページネーション:0.4.8」

リモートページネーションプラグインは、私たちはページの読み込みせずにAJAXを使用したページ付けのため田下提供します。これは、あなたが必要とするオブジェクトのリストのために多くのタグ付けをページングに提供します。例については

:改ページ

合計で使用するリンクの名前:今、あなたの_listTemplate GSP

行動上のコントローラ

public class PersonController{ 

    def list{ 
    [list:Person.list()] 
    } 

    def filterPersonList{ 
    render('listTemplate',model:[count:Person.list().size(),list:Person.list()]) 
    } 
    } 

public class Person{ 
    String name 
    long id 
    } 

:リストのサイズ

更新:最大リストを取得

のparams:テンプレート

最大を含めるDIV /スパンのID改ページ

に表示されるステップの数:

maxstepsを、独自のparamsを渡します

これは、エラーを取り除くのに役立ちます。

希望します。

関連する問題