【发布时间】:2011-12-05 22:24:12
【问题描述】:
我在数据库%Y-%m-%d 中有 ISO 8601 格式的日期。但是,当将日期传递给模板时,它会显示为 Oct. 16, 2011。
有没有一种方法可以让我随意调整格式?
【问题讨论】:
我在数据库%Y-%m-%d 中有 ISO 8601 格式的日期。但是,当将日期传递给模板时,它会显示为 Oct. 16, 2011。
有没有一种方法可以让我随意调整格式?
【问题讨论】:
为了改变views.py文件中的日期格式,然后赋值给模板:
# get the object details
home = Home.objects.get(home_id=homeid)
# get the start date
_startDate = home.home_startdate.strftime('%m/%d/%Y')
# assign it to template
return render_to_response('showme.html', {'home_startdate':_startDate}, context_instance=RequestContext(request) )
【讨论】:
如果您在 Django 模板中调用 Date 值时遇到错误,请试试这个
{{ViewfieldValue.CreateModelValue|date:"M d, Y" }}
【讨论】:
{{yourDate|date:'*Prefered Format*'}}
例子:
{{yourDate|date:'F d, Y'}}
【讨论】:
例如:
<td>Joined {{user.date_created|date:"F Y" }}<td>
这将返回Joined December 2018。
【讨论】:
【讨论】:
就用这个吧:
{{you_date_field|date:'Y-m-d'}}
这将显示类似 2016-10-16 的内容。 您可以根据需要使用格式。
【讨论】:
同时设置DATE_FORMAT 和USE_L10N
要在 Django 1.4.1 中对整个站点进行更改,请添加:
DATE_FORMAT = "Y-m-d"
到您的settings.py 文件并编辑:
USE_L10N = False
因为 l10n 覆盖 DATE_FORMAT
这记录在:https://docs.djangoproject.com/en/dev/ref/settings/#date-format
【讨论】:
在您的模板中,您可以使用 Django 的 date 过滤器。例如:
<p>Birthday: {{ birthday|date:"M d, Y" }}</p>
给予:
生日:1983 年 1 月 29 日
date filter docs 中的更多格式示例。
【讨论】: