NAME
Catalyst::TraitFor::Model::DBIC::Schema::ConnectInfo::Several - support for several connect_info
entries.
SYNOPSIS
package MyApp::Model::DB;
use Moose;
use namespace::autoclean;
extends 'Catalyst::Model::DBIC::Schema';
__PACKAGE__->config(
{
traits => ['ConnectInfo::Several'],
schema_class => 'MyApp::Schema',
connect_info => {
active_connection => 'mysql_devel',
mysql_devel => [ 'dbi:mysql:db_devel', 'user1', 'pass1' ],
mysql_production => [ 'dbi:mysql:db_prod', 'user2', 'pass2' ],
},
}
);
#
# or in application config
#
<Model::DB>
<connect_info>
active_connection mysql_devel
<mysql_devel>
dns dbi:mysql:db_devel
user user1
password pass1
</mysql_devel>
<mysql_prod>
dns dbi:mysql:db_prod
user user2
password pass2
</mysql_prod>
</connect_info>
</Model::DB>
DESCRIPTION
Enable connect_info
to be hash with several named connections defined inside, and choose active one with active_connection
. Also, set AutoCommit
option for you to 1
, if you don't set it yet.
This extension will do something only if you set active_connection
, otherwise it just do nothing, like it was not used at all.
TODO
Write tests.
REPOSITORY
Project is hosted at GitHub:
git://github.com/cub-uanic/c-t-m-dbic-schema-connectinfo-several.git
SEE ALSO
Catalyst::Model::DBIC::Schema, DBIx::Class, Catalyst
AUTHOR
Oleg Kostyuk, <cub at cpan.org>
COPYRIGHT & LICENSE
Copyright 2009 Oleg Kostyuk.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.