X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2FMaypole.pm;h=19e9cecbce80d7c41edc83df14c9ff2c7bd57d40;hb=a4c30c9757a710511bcfabe5cad9a7390eabfbcd;hp=5837848df1c59e3ebeebec65aab5ef94dff1d744;hpb=29550a30ca082a8f1f1d0cb1b4a92eb39bc3dd84;p=maypole.git diff --git a/lib/Maypole.pm b/lib/Maypole.pm index 5837848..19e9cec 100644 --- a/lib/Maypole.pm +++ b/lib/Maypole.pm @@ -652,9 +652,17 @@ sub __get_mime_type { sub __load_request_model { my ($self) = @_; - $self->model_class( $self->config->model->class_of($self, $self->table) ); + # We may get a made up class from class_of + my $mclass = $self->config->model->class_of($self, $self->table); + if ( eval {$mclass->isa('Maypole::Model::Base')} ) { + $self->model_class( $mclass ); + } + elsif ($self->debug) { + warn "\n***Warning: No $mclass class appropriate to set as request model : $@***\n" + } } + # is_applicable() returned false, so set up a plain template. Model processing # will be skipped, but need to remove the model anyway so the template can't # access it. @@ -955,8 +963,6 @@ sub send_output { } - - =back =head2 Path processing and manipulation