The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Catalyst::TraitFor::Model::DBIC::Schema::ConnectInfo::Several - support for several connect_info entries.

VERSION

    Version is 0.05

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',
            connections       => {
                mysql_devel       => [ 'dbi:mysql:db_devel', 'user1', 'pass1' ],
                mysql_production  => [ 'dbi:mysql:db_prod',  'user2', 'pass2' ],
            },
        }
    );

    #
    # or in application config
    #
    <Model::DB>
        traits                  ConnectInfo::Several
        active_connection       mysql_devel
        <connections>
            <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>
        </connections>
    </Model::DB>

DESCRIPTION

You can define several connections in connections hash, and select which one should be used currently via active_connection. You shouldn't define connect_info - it will be set for you, depending on what you set in active_connection and connections.

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.

SEE ALSO

Catalyst::Model::DBIC::Schema, DBIx::Class, Catalyst

SUPPORT

  • Report bugs or feature requests

        L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Catalyst-TraitFor-Model-DBIC-Schema-ConnectInfo-Several>
  • Git repository

        git clone git://github.com/cub-uanic/Catalyst-TraitFor-Model-DBIC-Schema-ConnectInfo-Several.git

AUTHOR

Oleg Kostyuk, <cub#cpan.org>

ACKNOWLEDGEMENTS

Matt S. Trout <mst#shadowcatsystems.co.uk>

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.