今までずっとLoaderで動的にスキーマを読み込んでた。スキーマ変更をちょくちょくしてたのもあったし。でも最近開発が急ピッチで進んでるところで皆同時にDBIC::Schema::Loader->connection()とかやり始めるとすごい遅くなるから、皆が大好きmake_schema_atを試してみてるんだけど、これがうまく動かない。特にrelationship系のところがメタメタ。search_related()とかやると、"can't call select() on an undefined value" とか言われる始末。なんでやねん。これがコマンドラインからだと動くんだけど、なんかCatalystからだと動かないというのがさらにいけない。あと、別ディレクトリに自分の拡張を入れて行くのはいいんだけど、これを入れてmake_schema_atする時に他の自分のモジュール(例:lib/MyApp/Util.pm)を使おうとするとlibをパスに入れなくてはならず、そこでlib/MyApp/Schemaを認識させないために妙な事をしなくちゃならんし・・・・
俺がなんか変な事してるのかなぁ。なんとなく、MyAppとは別にMyApp::Schemaを編集/管理するべきな気がしてきたよ!
コメント