NAME
Catalyst::Model::DBIC::Plain - DBIC Model Class
SYNOPSIS
# lib/MyApp/Model/DBIC.pm
package MyApp::Model::DBIC;
use base 'Catalyst::Model::DBIC::Plain';
my @conn_info = ( $dsn, $username, $password, \%dbi_attributes );
__PACKAGE__->load_classes;
__PACKAGE__->compose_connection(__PACKAGE__, @conn_info);
1;
# lib/MyApp/Model/DBIC/User.pm
package MyApp::Model::DBIC::User;
use base 'DBIx::Class::Core';
__PACKAGE__->table('user');
__PACKAGE__->add_columns(qw/id username password email clearance/);
__PACKAGE__->set_primary_key('id');
__PACKAGE__->add_relationship(
clearance => 'MyApp::Model::DBIC::Clearance',
{ 'foreign.id => 'self.clearance' }
);
# lib/MyApp/Controller/MyController.pm
$c->comp('DBIC')->class('user')->search(...);
# or
MyApp::Model::DBIC::User->search(...);
DESCRIPTION
This is the DBIx::Class
model class for Catalyst. Whilst it allows you to use DBIC as your model in Catalyst, it does not make your tables classes Catalyst-specific, so you can still use them in a non-Catalyst context.
new
Catalystifies DBIx::Class and makes the model model class a component.
SEE ALSO
AUTHOR
Danijel Milicevic, info@danijel.de
THANK YOU
Dan Kubb, Matt S. Trout
COPYRIGHT
This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.