Ожидаемый аргумент типа «строка», «ноль», заданный в пути свойства - PullRequest
0 голосов
/ 06 февраля 2020

На самом деле, когда я пытаюсь редактировать форму, отправляя пустые поля, появляется описанная выше ошибка,

Мой класс UserType выглядит следующим образом:

class UserType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('firstName', null, [
                'label' => 'Prénom'
            ])
            ->add('lastName', null, [
                'label' => 'Nom'
            ])
            ->add('email', EmailType::class, [
                'label' => 'Adresse e-mail'
            ])
            ->add('password', PasswordType::class, [
                'label' => 'Mot de passe'
            ])
        ;
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'data_class' => User::class,
        ]);
    }
}

1 Ответ

0 голосов
/ 06 февраля 2020

Эту проблему можно решить, добавив параметр 'empty_data' в функцию добавления построителя :

Таким образом, новый класс UserType становится:

class UserType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('firstName', null, [
                'label' => 'Prénom',
                **'empty_data' => ''**
            ])
            ->add('lastName', null, [
                'label' => 'Nom',
                **'empty_data' => ''**
            ])
            ->add('email', EmailType::class, [
                'label' => 'Adresse e-mail',
                **'empty_data' => ''**
            ])
            ->add('password', PasswordType::class, [
                'label' => 'Mot de passe',
                **'empty_data' => ''**
            ])
        ;
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'data_class' => User::class,
        ]);
    }
}
...