]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole.pm
fixed bug 16869 - forced inheritance of model
[maypole.git] / lib / Maypole.pm
index 119a85a29127c9908581bfa6afb34b667d0bd5c9..c18f69567d2affce8ff5b8a9facd290ccc07a0fc 100644 (file)
@@ -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");
     }
 }