Catalyst::Helper::Model::DBIC::Schemaで生成する際のResultディレクトリを無くす

script/create.pl model CatalystModelName DBIC::Schema App::Schema create=static use_namespaces=0 dbi:mysql:host=localhost:database=example dbuser password

use_namespaces=0をつけてスキーマクラスを生成すると、Resultディレクトリが生成されませんでした。CPANのドキュメントを見ると、use_namespacesなんて書いてなかったんですが、こっちの環境が地味にバージョン低いからかも?

ちょっと詳しく

use_namespaces=0無し
App/lib/App/Schema/Result/Myteble.pm

use_namespaces=0をつけないと、この様にResultディレクトリが生成されます。Catalystの入門的な記事をネットで見てると、このResultディレクトリはない事が多いので、若干混乱しました。恐らく記事が古いんだとは思います。

use_namespaces=0有り
App/lib/App/Schema/Myteble.pm

use_namespaces=0をつけた場合、Resultディレクトリがない形で生成されました。しばらくCatalystを触ってみて、Resultディレクトリは要らない気がしたので、無くしてみる事にしました。でも、ちゃんと意味を把握して使ってるわけじゃないので、何かではまるかも?

余談

PerlCatalystも初心者で、もっと他に備忘録として書いておきたい事はいっぱいあるんですが、知った事が多すぎてまとめられてないです。「今更Perlを始めた人が気になった事」みたいなエントリーが書けたらなと思ったけど、インプットが多すぎてそんなの押し流されてしまいました。このままだと何時まで経っても書けないので、順序とか気にせず書きやすいものから書いて、忘れても良いようにしたいところ。

環境

Perl 5.8.8 built for i386-linux-thread-multi
Catalyst 5.80025
Catalyst::Helper::Model::DBIC::Schema 0.43
Catalyst::Model::DBIC::Schema 0.43