こないだ書いた Catalyst の DBIC モデルを外部スクリプトから利用するっていうやつ、DBIx::Class::Schema::Loader つかえばいいね。

use FindBin;
use lib "$FindBin::Bin/../lib";

{
    package MyApp::Model::DBIC;
    use base qw/DBIx::Class::Schema::Loader/;

    __PACKAGE__->load_from_connection(
        dsn => 'dbi:...',
    );
    __PACKAGE__->load_classes;
}

こんな感じにすれば、MyApp::Model::DBIC::* をロードしてくれる。

全部ロードしてもいいなら use MyApp; で終わりなんだけど多分ほとんどの場合外部スクリプトから必要なのはモデル部分だけだと思われる。

22:55: `load_classes` 書いてなかったので追記。ロードされてねーよ。
by typester / at 2006-02-06T04:41:00 / perl · dbic / Comments(0)