【发布时间】:2013-02-06 01:19:32
【问题描述】:
我正在使用HTML::FormHandler,为了不重复代码,我想利用它的子类化功能。目前我有两种形式:
myapp::Form::Account::Base
myapp::Form::Account::Register
myapp::Form::Account::Register 继承自 myapp::Form::Account::Base。 myapp::Form::Account::Base 有一个电子邮件字段,定义如下:
has_field 'email' => (
label => 'Email',
type => 'Text',
apply => [ Email ],
element_class => [qw/email/],
required => 1,
unique => 1,
element_attr => {autocomplete=>"off"}, #for register page
);
在myapp::Form::Account::Register 中,我希望定义完全相同的电子邮件字段,但我想向其中添加“uniqueemail”类。但是,每当我这样做时:
has_field 'email' => (
element_class => [qw/uniqueemail/],
);
在myapp::Form::Account::Register中,它只是完全覆盖了父表单对电子邮件字段的定义,并创建了一个新的。无论如何,只是将父表单字段子类化或添加到它,还是我只需要再次重新定义电子邮件字段以获得我想要的更改?谢谢!
【问题讨论】: