class::dbi::pager(3pm) debian man page | unix.com

Man Page: class::dbi::pager

Operating Environment: debian

Section: 3pm

Class::DBI::Pager(3pm)					User Contributed Perl Documentation				    Class::DBI::Pager(3pm)

NAME
Class::DBI::Pager - Pager utility for Class::DBI
SYNOPSIS
package CD; use base qw(Class::DBI); __PACKAGE__->set_db(...); use Class::DBI::Pager; # just use it # then, in client code! package main; use CD; my $pager = CD->pager(20, 1); # ($items_per_page, $current_page) my @disks = $pager->retrieve_all;
DESCRIPTION
Class::DBI::Pager is a plugin for Class::DBI, which glues Data::Page with Class::DBI. This module reduces your work a lot, for example when you have to do something like: * retrieve objects from a database * display objects with 20 items per page In addition, your work will be reduced more, when you use Template-Toolkit as your templating engine. See "EXAMPLE" for details.
EXAMPLE
# Controller: (MVC's C) my $query = CGI->new; my $template = Template->new; my $pager = Film->pager(20, $query->param('page') || 1); my $movies = $pager->retrieve_all; $template->process($input, { movies => $movies, pager => $pager, }); # View: (MVC's V) Matched [% pager.total_entries %] items. [% WHILE (movie = movies.next) %] Title: [% movie.title | html %] [% END %] ### navigation like: [1] [2] [3] [% FOREACH num = [pager.first_page .. pager.last_page] %] [% IF num == pager.current_page %][[% num %]] [% ELSE %]<a href="display?page=[% num %]">[[% num %]]</a>[% END %] [% END %] ### navigation like: prev 20 | next 20 [% IF pager.previous_page %] <a href="display?page=[% pager.previous_page %]"> prev [% pager.entries_per_page %]</a> | [% END %] [% IF pager.next_page %] <a href="display?page=[% pager.next_page %]"> next [% pager.entries_per_page %]</a> [% END %]
NOTE
/ TODO This modules internally retrieves itertors, then creates "Data::Page" object for paging utility. Using SQL clauses "LIMIT" and/or "OFFSET" with "DBIx::Pager" might be more memory efficient.
AUTHOR
Tatsuhiko Miyagawa <miyagawa@bulknews.net> Original idea by Tomohiro Ikebe <ikebe@cpan.org> This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
Class::DBI, Data::Page perl v5.10.0 2006-03-01 Class::DBI::Pager(3pm)
Related Man Pages
dbix::class::cdbicompat(3) - osx
class::dbi::pager(3pm) - debian
class::dbi::query(3pm) - debian
dbix::class::cdbicompat(3pm) - debian
data::pager(3pm) - debian
Similar Topics in the Unix Linux Community
Mac's PHP MVC Framework 0.6.5 (Default branch)
Simple Movie Catalog 1.1.0 (Default branch)
Renaming Movies (or Flipping Portions of Filenames Using sed or awk)
Sending message to a mobile number through UNIX
Backing up an entire HD