SQL::Translator を使って,DBIC のスキーマクラスを自動作成
Catalyst::Model::DBIC::Schema を使いこなすのはややめんどくさい状況ですが,SQL::Translator というモジュールがあり,これに付属する sqlt というコマンドラインフロントエンドを使うと,スキーマを DB からロードして DBIC クラスを生成してくれます。
たとえば SQLite の DB ファイル testdb があったとして,
% sqlt -f DBI --dsn DBI:SQLite:testdb -t DBIx-Class-File > MyDBIC.pm
とすると,testdb に含まれるテーブルとスキーマが一つのパッケージとして生成されます(DBIC と DBIC::Schama 由来のクラスとして)。
デフォルトでクラス名は My::Schema という名前空間ですが,--prefix オプションで明示的に指定することもできます。
そのうち Catalyst::Helper::DBIC::Schema も,SQL::Translator を使うようになるのではないかなぁと予想。