【发布时间】:2014-02-24 19:35:02
【问题描述】:
我正在使用HTML::FormHandler,我想要一个具有动态数量的表单元素的表单。本质上,我有一些始终存在的输入,例如first_name、last_name 和email,但是我有一个输入pracitce_area,我可以动态地拥有很多(所以practice_area1, pracitce_area2 等)。所以在客户端我将使用jQuery动态添加更多practice_area输入,我希望我的HTML::FormHandler表单能够处理这些输入的动态数量并验证它们并将它们放入数据库。 practice_area 输入将存储在一个单独的表中,该表将与此表单元素的外键相关,因此我希望 HTML::FormHandler 知道这些是相关的,并在编辑时提取一个动态数字,还可以在保存的时候把一个动态的号码存入数据库。有没有办法用HTML::FormHandler 处理这样的事情?这是我的表单的定义:
package test::Form::Base;
use namespace::autoclean;
use HTML::FormHandler::Moose;
with 'HTML::FormHandler::TraitFor::Model::DBIC';
has title => ( is => 'ro', default => 'Client Information Form');
has '+item_class' => ( default => 'ClientInformationForm' );
has_field 'first_name' => (
type => 'Text',
label => 'First Name',
required => 1,
);
has_field 'last_name' => (
type => 'Text',
label => 'Last Name',
required => 1,
);
has_field 'email' => (
type => 'Email',
label => 'Email',
required => 1,
);
#would like to have this be dynamic in number, and have HTML::FormHandler know
#that it's related with a foreign key when pulling them out of the database
has_field 'practice_area' => (
type => 'TextArea',
);
no HTML::FormHandler::Moose;
__PACKAGE__->meta->make_immutable;
1;
【问题讨论】: