DeserializeFormats по умолчанию для DateTime в JMS Serializer

Я вижу конфигурации default_format и default_timezone для десериализации значений даты и времени, но не вижу конфигурации для указания списка альтернативных форматов. Я хотел бы, чтобы мой API принимал временные метки с нашим без часового пояса (при условии, что UTC, если не указано) и с дробными секундами (микросекундами) или без них. Приведенный ниже пример аннотации выполняет это, но я бы не хотел копировать/вставлять это в множество типов ввода, которые я использую.

/**
 * @JMS\Type("DateTime<'Y-m-d\TH:i:s.uP', '+00:00', ['Y-m-d\TH:i:sP', 'Y-m-d\TH:i:s.uP', 'Y-m-d\TH:i:s', 'Y-m-d\TH:i:s.u']>"
 */
protected \DateTimeInterface $timestamp;

У кого-нибудь есть пример переопределения для этого? Может быть, запрос на добавление поддержки новой конфигурации default_deserialize_format?


person Paul Dugas    schedule 19.11.2020    source источник


Ответы (1)


Типично... Наконец сломался, задал вопрос, разобрался через час. обработчик с высокими приоритетами, чтобы они переопределяли встроенные обработчики, был тем, чем я был находясь в поиске.

person Paul Dugas    schedule 19.11.2020