Преобразование даты и времени в шаблон HTML - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть поле DateTime в моих моделях / дБ в форме strftime('%Y-%m-%d %H:%M:%S'). В моем HTML-шаблоне я хочу, чтобы это была просто дата в форме '25 Dec 2000'.

Однако, если я изменю с {{ model.datetime }} на {{ model.datetime|date:'d F Y' }}, поле в HTML-шаблоне станет пустым.

Как мне решить эту проблему?

Ответы [ 3 ]

0 голосов
/ 05 апреля 2019

Когда вы делаете strftime ('% Y-% m-% d% H:% M:% S') , тогда вы уже получаете строковый формат вашего объекта datetime.И когда вы делаете {{model.datetime | date: 'd FY'}} , здесь вы делаете еще одну операцию только с string объектом, поэтому он возвращается пустым.

date = datetime.now()
==> datetime.datetime(2019, 4, 5, 11, 40, 17, 869441)

date.strftime('%Y-%m-%d %H:%M:%S')
==> '2019-04-05 11:40:25.941187' 
// This is just a string at this point you cannot further do date operations on it

Для выполнения операций с датами, таких как {{model.datetime | date: 'd FY'}} , вы должны выполнять эту операцию только для объекта Datetime .

0 голосов
/ 05 апреля 2019

Вы можете использовать шаблон фильтра как,

{{ you_date_field|date:'d M Y' }}
0 голосов
/ 05 апреля 2019

Использование dparser:

import dateutil.parser as dparser
dt_1 = "2000-12-25 17:30:00"
tempVal = (dparser.parse(dt_1,fuzzy=True).date()).strftime('%d %B %Y')

print("Date: {}".format(tempVal))

OUTPUT

Date: 25 December 2000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...