]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole/Model/CDBI/Plain.pm
Fixed mime type setting, fixed errors in revision 445, folded in Maypole::Component...
[maypole.git] / lib / Maypole / Model / CDBI / Plain.pm
index 2c2d869a51679f24188cdddfb2ecafd8e59ba8f3..9f149ede84460e7ade6de80a4aec091f65f3d40f 100644 (file)
@@ -1,9 +1,17 @@
 package Maypole::Model::CDBI::Plain;
+use Maypole::Config;
 use base 'Maypole::Model::CDBI';
+use strict;
+
+Maypole::Config->mk_accessors(qw(table_to_class));
+
+
 
 sub setup_database {
     my ( $self, $config, $namespace, $classes ) = @_;
     $config->{classes}        = $classes;
+    foreach my $class (@$classes) { $namespace->load_model_subclass($class); }
+    $namespace->model_classes_loaded(1);
     $config->{table_to_class} = { map { $_->table => $_ } @$classes };
     $config->{tables}         = [ keys %{ $config->{table_to_class} } ];
 }
@@ -13,6 +21,9 @@ sub class_of {
     return $r->config->{table_to_class}->{$table};
 }
 
+
+
+
 1;
 
 =head1 NAME
@@ -22,19 +33,29 @@ Maypole::Model::CDBI::Plain - Class::DBI model without ::Loader
 =head1 SYNOPSIS
 
     package Foo;
-    use base 'Maypole::Application';
-    use Foo::SomeTable;
-    use Foo::Other::Table;
+    use 'Maypole::Application';
 
-    Foo->config->{model_class} = "Maypole::Model::CDBI::Plain";
+    Foo->config->model("Maypole::Model::CDBI::Plain");
     Foo->setup([qw/ Foo::SomeTable Foo::Other::Table /]);
 
 =head1 DESCRIPTION
 
 This module allows you to use Maypole with previously set-up
-C<Class::DBI> classes; simply call C<setup> with a list reference
+L<Class::DBI> classes; simply call C<setup> with a list reference
 of the classes you're going to use, and Maypole will work out the
 tables and set up the inheritance relationships as normal.
 
+=head1 METHODS
+
+=over 4
+
+=item setup_database
+
+=item  class_of
+
+=back
+
+See L<Maypole::Model::Base>
+
 =cut