Symfony FOSREST API Datetime Ошибка

Я использую Symfony 2.7, я создал API. Когда я отправляю форму (данные json) с помощью почтальона, он не принимает значение datetime.

Конструктор форм

->add('letAt','datetime')

команда

    /**
     * @var DateTime
     * @Assert\NotNull(message="Please enter let at time.")
     */
    protected $letAt;

сущность

/**
 * @var \DateTime
 * @ORM\Column(type="datetime", nullable=true)
 */
protected $letAt;

Запрос Json

{
"property_type":
    {
        "marketingTitle": "",
        "letAt": "2018-11-11 10:10:10"
    }
}

ошибка

"errors": {
        "children": {
            "marketingTitle": {},
            "letAt": {
                "errors": [
                    "This value is not valid."
                ],
                "children": {
                    "date": {
                        "children": {
                            "year": {},
                            "month": {},
                            "day": {}
                        }
                    },
                    "time": {
                        "children": {
                            "hour": {},
                            "minute": {}
                        }
                    }
                }
            },

Как я могу указать значение dateTime с запросом?

1 ответ

Решение

В Symfony 2.7 по умолчанию datetime формат \DateTimeType::HTML5_FORMAT и это ценность yyyy-MM-dd'T'HH:mm:ssZZZZZ,

Вы указываете свой тип формата следующим образом:

->add('letAt','datetime', array('format' => 'yyyy-MM-dd  HH:mm:ss', 'widget' => 'single_text'))
Другие вопросы по тегам