EasyAdmin: «Невозможно преобразовать значение для пути свойства XY: ожидается строка.» - PullRequest
0 голосов
/ 15 октября 2018

При нажатии на ссылку «Изменить» в представлении списка EasyAdmin объекта, содержащего поле с type="date", появляется следующее сообщение об ошибке:

Невозможно преобразовать значение для пути свойства«день рождения»: ожидается строка.

У меня есть это в моей сущности:

/**
 * @ORM\Column(type="date")
 * @Assert\NotBlank()
 * @Assert\Date()
 */
private $birthday;

1 Ответ

0 голосов
/ 15 октября 2018

Есть 2 решения.

Быстро и грязно (Symfony <5) </strong>

Измените это на config/packages/easy_admin.yaml:

easy_admin:
    entities:
        MyEntity:
            form:
                fields:
                    - { property: 'birthday', type: 'date' }

См. https://symfony.com/doc/master/bundles/EasyAdminBundle/book/edit-new-configuration.html#the-special-form-view для получения дополнительной информации о конфигурации.

Быстрая и чистая

@Assert\Date() будет устаревшей для полей type="date" в Symfony 4.2 (и, таким образом,скорее всего удалено в Symfony 5).Проверка основана на подсказке типа \DateTimeInterface установщика.Всего:

/**
 * @ORM\Column(type="date")
 * @Assert\NotBlank()
 */
private $birthday;

public function setBirthday(?\DateTimeInterface $birthday): self
{
    // ...
    return $this;
}

См. https://github.com/EasyCorp/EasyAdminBundle/issues/2381 для получения дополнительной информации.

...