Как установить выходной формат для поля даты django rest framework - PullRequest
2 голосов
/ 26 июня 2019

У меня есть следующий очень простой сериализатор:

from rest_framework import serializers

class EmailSendSerializer(serializers.Serializer):
    date = serializers.DateField(format='%B')

Мое понимание документов https://www.django -rest-framework.org / api-guide / fields / # datefield isчто проверенная дата, возвращаемая сериализатором, должна представлять собой полное имя месяца (как указано в% B), но я получаю обычный объект даты.

Я могу найти множество ссылок SO на изменениеinput_format поля даты, но ничего, что относится к дате вывода.

например, с вводом в сериализатор даты = {str} '2020-12-25' Я ожидаю результата «Декабрь», но яget {date} 2020-12-25.

Как правильно использовать параметр формата для возврата нужного мне формата даты?

Спасибо

1 Ответ

0 голосов
/ 06 июля 2019

Похоже, отформатированные данные будут сохранены как свойства свойства serializer.data.

, поэтому используйте сериализатор, определенный выше:

data = {"date":"2020-12-25"}
serializer = EmailSendSerializer(data=data)
serializer.is_valid() # True
print(s.data.date) # December
print(s.validated_data.date) # "2020-12-25"
...