use Class::DBI::AsForm;
use Class::DBI::FromCGI;
use Class::DBI::AbstractSearch;
+use Class::DBI::Pager;
use CGI::Untaint;
use strict;
+=head1 NAME
+
+Apache::MVC::Model::CDBI - Model class based on Class::DBI
+
+=head1 DESCRIPTION
+
+This is a master model class which uses C<Class::DBI> to do all the hard
+work of fetching rows and representing them as objects. It is a good
+model to copy if you're replacing it with other database abstraction
+modules.
+
+=cut
+
sub related {
my ($self, $r) = @_;
# Has-many methods; XXX this is a hack
$r->{template_args}{search} = 1;
}
+sub list :Exported {
+ my ($self, $r) = @_;
+ if ( my $rows = $r->config->{rows_per_page}) {
+ $self = $self->pager($rows, $r->query->{page});
+ $r->{template_args}{pager} = $self;
+ }
+ $r->objects([ $self->retrieve_all ]);
+}
1;
-=head1 NAME
-
-Apache::MVC::Model::CDBI - Model class based on Class::DBI
-
-=head1 DESCRIPTION
-
-This is a master model class which uses C<Class::DBI> to do all the hard
-work of fetching rows and representing them as objects; instead, it
-concentrates on the actions that can be performed in the URL:
-C<do_edit>, C<delete> and C<search>.