-# drb - I've (probably temporarily) split this out from do_edit, so it's
-# reported by Mp::P::Trace
-sub _do_update_or_create
-{
- my ($self, $r, $obj, $required_cols) = @_;
-
- my $fatal;
- my $creating = 0;
- my $h = CGI::Untaint->new( %{$r->params} );
-
- # update or create
- if ($obj)
- {
- # We have something to edit
- eval { $obj->update_from_cgi( $h => {required => $required_cols} ) };
- $fatal = $@;
- }
- else
- {
- eval {
- $obj = $self->create_from_cgi( $h => {required => $required_cols} )
- };
-
- if ($fatal = $@)
- {
- warn "$fatal" if $r->debug;
- }
- $creating++;
- }
-
- return $obj, $fatal, $creating;
-}
-
-sub delete : Exported {
- return shift->SUPER::delete(@_) if caller ne "Maypole::Model::Base";
- my ( $self, $r ) = @_;
- $_->SUPER::delete for @{ $r->objects || [] };
- $r->objects( [ $self->retrieve_all ] );
- $r->{template} = "list";
- $self->list($r);
-}
+The C<list> method fills C<$r-E<gt>objects> with all of the
+objects in the class. The results are paged using a pager.