Class::DBI::Plugin::Pager

最終更新日時:2007-09-08 00:12:38
Class::DBI

Class::DBI::Plugin::Pagerとは


Class::DBI::Plugin::Pager は Class::DBI によって取り出したデータに Data::Page のインターフェースが使えるようにするプラグインです。
DB 検索データをページ単位で表示したい場合に非常に役立ちます。
また、同じような機能のプラグインとして Class::DBI::Pager があります。(こちらの方がメジャー?)
Class::DBI::Pager は毎回全データを取得するのに対し、Class::DBI::Plugin::Pager は表示に必要な分だけ取得しますので、パフォーマンス的には Class::DBI::Plugin::Pager の方が優れています。
この差は、データ量が少なければたいしたことないですが、大量になってくるとかなり変わってきます。
ページごとの表示をするくらいなので大量になることが予想されますので、Class::DBI::Pager よりも Class::DBI::Plugin::Pager を使っておいた方が無難ではないかと個人的には思います。

使用方法


例えば以下のような感じです。

 my $pager  = MYDB->pager;
 my @thread = $pager->search_where( $where, $order_by, $per_page, $page );


$pager には Data::Page のインスタンスが、@thread には、検索結果の Class::DBI のインスタンスが入ります。

お問い合わせは 掲示板 にて。