X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole%2FModel%2FCDBI%2FPlain.pm;h=e4f6cfc5dc419af8d99d6961c5469483cf2e860a;hb=72ebd12372713c17bb79d6510f3da7c7b4561338;hp=05aad180c6ee1f0394da56ec0a9c0ff04ef45d55;hpb=4833e0a671268ff2dca37e63099d7acafc8d87d9;p=maypole.git diff --git a/lib/Maypole/Model/CDBI/Plain.pm b/lib/Maypole/Model/CDBI/Plain.pm index 05aad18..e4f6cfc 100644 --- a/lib/Maypole/Model/CDBI/Plain.pm +++ b/lib/Maypole/Model/CDBI/Plain.pm @@ -1,14 +1,17 @@ package Maypole::Model::CDBI::Plain; use base 'Maypole::Model::CDBI'; + +Maypole::Config->mk_accessors(qw(table_to_class)); + sub setup_database { - my ($self, $config, $namespace, $classes) = @_; - $config->{classes} = $classes; - $config->{table_to_class} = { map { $_->table => $_ } @$classes }; - $config->{tables} = [ keys %{$config->{table_to_class}} ]; + my ( $self, $config, $namespace, $classes ) = @_; + $config->{classes} = $classes; + $config->{table_to_class} = { map { $_->table => $_ } @$classes }; + $config->{tables} = [ keys %{ $config->{table_to_class} } ]; } sub class_of { - my ($self, $r, $table) = @_; + my ( $self, $r, $table ) = @_; return $r->config->{table_to_class}->{$table}; } @@ -21,7 +24,7 @@ Maypole::Model::CDBI::Plain - Class::DBI model without ::Loader =head1 SYNOPSIS package Foo; - use base 'Apache::DBI'; + use base 'Maypole::Application'; use Foo::SomeTable; use Foo::Other::Table; @@ -35,4 +38,17 @@ C classes; simply call C 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 + =cut +