从Symfony 2.1迁移到2.5,选择字段不起作用

时间:2014-10-08 16:00:04

标签: symfony

我正在将Symfony 2.1项目更新为2.5,并注意到国家和外国实体下拉列表是空的。

这是表格:     

namespace KF\UserBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;

class RegistrationType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('firstName', null, array('required' => true))
            ->add('lastName', null, array('required' => true))
            ->add('email', 'email', array('required' => true))
            ->add('telephone', null, array('required' => false))
            ->add('country', 'country', array(
                        'required' => true,
                        'property_path' => 'addressHome.country',
                        'empty_value' => 'user.registration_form.select_country',
                        'empty_data' => null
                ))
            ->add('agency', 'entity', array(
                        'class' => 'KFEEEPBundle:Agency',
                        'property' => 'name',
                        'empty_value' => 'user.registration_form.select_agency',
                        'empty_data' => null,
                        'required' => true))
            ->add('motivation', 'textarea', array('attr' => array('cols' => 50, 'rows' => 8), 'required' => false))
        ;
    }

    public function getName()
    {
        return 'kf_userbundle_accountdetailstype';

    }
}

国家/地区是一种原生的Symfony表单类型,应该可以工作..找到“代理”类,数据库包含记录,但也是空的。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

原来我的表单被覆盖了,而choice_widget正在覆盖它。

反过来,使用了这个已弃用的树枝块widget_choice_options(而不是新的choice_widget_options)。

本页详细介绍了它:

https://medium.com/@sprain/updating-to-symfony-2-3-with-some-form-surprises-2e43b6be2b6d