Как в представлении Django отформатировать дату, как в шаблоне? - PullRequest
0 голосов
/ 07 мая 2020

Если у меня есть объект datetime , и я визуализирую его в шаблоне Django следующим образом:

{{ foobar }}

Тогда Django отформатирует его, чтобы он выглядел красиво:

July 18, 2019, midnight

Как сделать то же самое внутри представления Django в коде Python? В этом примере я представляю функцию с именем render_date:

def example_view(request):
    # ...
    example = "Date is: " + render_date(foo_date)

Я бы хотел, чтобы она отображалась точно так же, как в шаблоне. Как мне это сделать?

Должны соблюдаться настройки DATE_FORMAT, DATETIME_FORMAT, TIME_FORMAT, SHORT_DATE_FORMAT и USE_L10N.

1 Ответ

0 голосов
/ 07 мая 2020

Вот как:

from django.utils.formats import date_format, time_format

example = "Date is: "     + date_format(foo_date) # datetime.date
example = "Datetime is: " + date_format(foo_datetime, 'DATETIME_FORMAT') # datetime.datetime
example = "Time is: "     + time_format(foo_time) # datetime.time
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...