X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole.pm;h=c18f69567d2affce8ff5b8a9facd290ccc07a0fc;hb=41a93152a01bdeab5ada42fd423f985554ade78e;hp=119a85a29127c9908581bfa6afb34b667d0bd5c9;hpb=57a9b9bffae05c0925b0bbaa9a595ecb96d45beb;p=maypole.git diff --git a/lib/Maypole.pm b/lib/Maypole.pm index 119a85a..c18f695 100644 --- a/lib/Maypole.pm +++ b/lib/Maypole.pm @@ -306,15 +306,16 @@ sub setup_model foreach my $subclass ( @{ $config->classes } ) { - no strict 'refs'; - unshift @{ $subclass . "::ISA" }, $config->model; - - # Load custom model code, if it exists - nb this must happen after the - # unshift, to allow code attributes to work, but before adopt(), - # in case adopt() calls overridden methods on $subclass - $class->load_model_subclass($subclass); - - $config->model->adopt($subclass) if $config->model->can("adopt"); + next if $subclass->isa("Maypole::Model::Base"); + no strict 'refs'; + unshift @{ $subclass . "::ISA" }, $config->model; + + # Load custom model code, if it exists - nb this must happen after the + # unshift, to allow code attributes to work, but before adopt(), + # in case adopt() calls overridden methods on $subclass + $class->load_model_subclass($subclass); + + $config->model->adopt($subclass) if $config->model->can("adopt"); } }