G'Day,
Я работаю с DBIx :: Class 0.07003 и DBIx :: Class :: Schema :: Loader 0.03009 и пытаюсь изменить базовый класс классов, сгенерированных Loader - с:
package S2S::DBIxperiment::Productions;
# Created by DBIx::Class::Schema::Loader v0.03009 @ 2011-06-24 14:29:13
use base 'DBIx::Class';
__PACKAGE__->load_components("PK::Auto", "Core");
что-то вроде:
package S2S::DBIxperiment::Productions;
# Created by DBIx::Class::Schema::Loader v0.03009 @ 2011-06-24 14:29:13
use base 'BaseMooseDBI';
__PACKAGE__->load_components("PK::Auto", "Core");
где BaseMooseDBI выглядит так:
package BaseMooseDBI;
use Moose;
use base qw(DBIx::Class);
Однако это, похоже, не работает вообще, и, похоже, не наследует вещи из пакета BaseMooseDBI
(атрибуты и т. Д.) Я также пытался переопределить load_components
в BaseMooseDBI
, но это никогда вызывается - вместо этого ошибки, которые он не может найти load_components
?
В чем проблема?
Примечание: я не могу использовать более новые use_moose
и result_base_class
при создании результирующих классов.
РЕДАКТИРОВАТЬ: Найдено решение. Посмотрите, как DBIx :: Class :: Schema :: Loader делает это теперь , имеют изменяемые и неизменяемые классы результатов.