DBIx :: Class ResultSourceでnew()メソッドを使用して(一時的な可能性のある)変数を作成する場合、DBICスキーマで指定されたデフォルト値(そこからテーブルを作成するために指定した)が属性に入力されていないようです。スキーマ)。
現在、このようなクラスの1つ(これが問題となった最初のケース)に対して1つのデフォルト値を作成しています。
sub new {
my $class = shift;
my $self = $class->next::method(@_);
$self->queue('DEFAULT_QUEUE_VAL') unless $self->queue();
return $self;
}
そのクラス(つまり、属性queue => DEFAULT_QUEUE_VAL)。ただし、長期的には、さまざまなデフォルト値を持ついくつかのDBICクラスがあり、さまざまな場合すべてに上記のロジックを複製することは避けたいと考えています。
これを行うために利用できるCPANモジュール/プラグインはありますか?CPANの(明らかに大雑把な)検索では何も見つかりませんでした。
編集:コードサンプルのゴミを修正しました。古いコードからcpしたことがわかりました。