まず最初の"can't find method search()..."は、DBIx::Class::Schema::Loaderがロードに失敗してるにも関わらずに普通にサーバーが開始しているのでわからない。今DBIx::Class::Schema::Loaderのドキュメントを読んだのだが、とりあえずcroak on errorみたいのはないみたい。まぁ要はクラス定義に問題があったらcroakするオプションを作って、./script/hoge_create.pl modelするときにデフォルトで



package Hoge::Model::Hage;

use strict;
use base qw/DBIx::Class::Schema::Loader/;

__PACKAGE__->loader_options(
relationships => 1,
on_error => 'fatal', # こんなオプション存在しないけどな
# debug => 1,
);

ってしておけばいいんだよ。なんかエラーが起こってる時に無視しちゃうのって気持ち悪い。


で、もう一つの問題はid:typesterさんが言ってた通り。Hoge::Model以下にSchema入れちゃいけないらしい。これもせめて警告くらい出てほしいなぁ。