Я использую Symfony2 и FOSUserBundle.
Как подробно описано в документации, я переопределил и создал свойство «имя» в объекте User.
Я делаю все необходимое и, наконец, получаю, чтобы это поле отображалось в виде формы.
Дело в том, что когда я выхожу из form_widget(form.name)
и генерируется тэг ввода html, в нем создается свойство required = "required". И это заставляет двигатель красным вводить, когда поле не заполнено.
Как сделать, чтобы Symfony2 не обязал это поле? Я предполагаю, что это должно быть здесь:
parent::buildForm($builder, $options); // add your custom field $builder->add('name', 'text', array('label' => 'form.name')); $builder->remove('username');
или здесь:
/** * @ORM\Column(type="string", length="255") * * @Assert\MinLength(limit="0", message="The name is too short.", groups={"Registration", "Profile"}) * @Assert\MaxLength(limit="255", message="The name is too long.", groups={"Registration", "Profile"}) */ private $name;
$builder->add('name', 'text', array('label' => 'form.name','required' => false));