Symfony 3.4 + FOSUserBundle добавить сообщение об ошибке для нового настраиваемого поля - PullRequest
0 голосов
/ 26 ноября 2018

Я создал новое пользовательское поле в UserEntity и, следовательно, Assert-Validation с сообщением об ошибке.Это сообщение может отображаться глобально с {{ form_errors(form) }}, но я не нашел способа отобразить сообщение об ошибке, связанное с полем, без переопределения всей формы.

{{ form_errors(form.field_name) }} тоже не работает

1 Ответ

0 голосов
/ 27 ноября 2018

FOSUserBundle отображает ошибки самостоятельно.

Моя проблема была опечатка в имени поля в FormType.Оно должно точно соответствовать имени переменной в Entity

Entity

/**
 * Some Comment
 *
 * @ORM\Column(name="field_name", type="array", nullable=true)
 * @Assert\NotBlank(message = "Please select at least one field_name")
 */
protected $fieldName; // Entity variable name

FormType

    $builder->add(
        'fieldName', // Needs to match Entity variable name
        ChoiceType::class,
        array(
            'choices' => array(
                'Some Choice' => '1',
                'Other Choice' => '2',
                '3rd Choice' => '3',
            ),
            'label' => 'form.register.fieldname',
            'translation_domain' => 'user',
            'multiple' => true,
            'expanded' => true,
            'required' => true,
        )
    );
...