Php Symfony2表格输入数字范围

Php Symfony2表格输入数字范围,php,forms,symfony,doctrine,Php,Forms,Symfony,Doctrine,使用Symfony2的form builder的最佳方式是什么?用户可以输入从第一个到最后一个的2个数字。例如,用户希望输入2到5的机架号,控制器必须输入数据库机架号,从2、3、4和5开始。如果输入5-9,则数据库输入5、6、7、8、9,依此类推 然而,数据库只有一列“Rack”,所以我不知道在识别每个字段时使用哪个名称 是这样的吗 $builder ->add('rackno', 'integer', array( 'label' =>

使用Symfony2的form builder的最佳方式是什么?用户可以输入从第一个到最后一个的2个数字。例如,用户希望输入2到5的机架号,控制器必须输入数据库机架号,从2、3、4和5开始。如果输入5-9,则数据库输入5、6、7、8、9,依此类推

然而,数据库只有一列“Rack”,所以我不知道在识别每个字段时使用哪个名称

是这样的吗

$builder
        ->add('rackno', 'integer', array(
                'label' => 'Rack: '
            )) // first rack #
        ->add('rackno', 'integer', array(
                'label' => 'To: '
            )) // last rack #
        ->add('Submit', 'submit');
你可以加上

'mapped' => false 
并将其名称从设置为rackno\u,并将rackno\u设置为 将其值分配给表单中的两个字段,以便它们的值不会分配给
$object->rackno
字段

然后,在提交表单后,可以对值执行任何操作,并在保存对象后执行插入操作。所以你会:

$builder
        ->add('rackno_from', 'integer', array(
                'label' => 'Rack: ',
                'mapped' => false
            )) // first rack #
        ->add('rackno_to', 'integer', array(
                'label' => 'To: ',
                'mapped' => false
            )) // last rack #
        ->add('Submit', 'submit');
然后在你提交表格之后

if($form->isValid())
{

// get the rackno_from and rackno_to from form and do what you need with those values

}