「条件に同意する」ためのチェックボックスを備えた単純なユーザー登録フォームがあります。すべてのフィールドを error_bubbling=false に設定しましたが、チェックボックスのエラーが form_errors(form) セクションに表示されます。
ここに私のエンティティがあります:
class User implements UserInterface, \Serializable, EquatableInterface
{
/**
* @ORM\Column(type="boolean")
* @Assert\Type("bool")
* @Assert\NotBlank(groups={"Registration"})
*/
private $isAcceptingTOS;
....
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'password_required' => true,
'validation_groups' => array('Registration', 'Default'),
));
}
}
私のフォームタイプ:
class RegistrationType extends AbstractType
{
$builder
->add('acceptingTOS', 'checkbox', array(
'error_bubbling' => false,
)),
....
}
そして私のテンプレート
<form action="{{ path('registration_create') }}" method="post" {{ form_enctype(form) }}>
{{ form_errors(form) }}
{{ form_widget(form.acceptingTOS) }}
{{ form_label(form.acceptingTOS) }}
{{ form_errors(form.acceptingTOS) }}
{{ form_rest(form) }}
<input type="submit" />
</form>
ヒントはありますか?