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',
active_connection => 'mysql_devel',
connection => {
mysql_devel => [ 'dbi:mysql:db_devel', 'user1', 'pass1' ],
mysql_production => [ 'dbi:mysql:db_prod', 'user2', 'pass2' ],
},
}
);
#
# or in application config
#
traits ConnectInfo::Several
active_connection mysql_devel
dns dbi:mysql:db_devel
user user1
password pass1
dns dbi:mysql:db_prod
user user2
password pass2
DESCRIPTION
You can define several named connections in "connection" hash, and
selectr which one should be used currently with "active_connection". You
shouldn't define "connect_info", it will be set for you, depending on
what you set in "active_connection" and "connection". Also, set
"AutoCommit" option for you to 1, if you don't set it yet.
This trait 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, ""
CONTRIBUTORS
Matt S. Trout ""
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.