日期的Django标记模板
从一个API中,我得到了一个日期,它是用日期的Django标记模板,django,django-templates,Django,Django Templates,从一个API中,我得到了一个日期,它是用{{value}}:2014-03-25T15:51:29Z呈现的 我想用一种更奇特的方式来显示它,但是使用标签{{value | date:'dmy'}},什么都不显示。。。我是否应该指定输入日期格式?干杯看起来值不是日期时间对象,而是字符串。您需要在视图中转换它,然后才能在模板中处理它 有几种方法可以做到这一点,请参阅许多示例 因此,如果您的观点有: import re from datetime import datetime def my_vi
{{value}}
:2014-03-25T15:51:29Z呈现的
我想用一种更奇特的方式来显示它,但是使用标签
{{value | date:'dmy'}}
,什么都不显示。。。我是否应该指定输入日期格式?干杯看起来值
不是日期时间
对象,而是字符串。您需要在视图中转换它,然后才能在模板中处理它
有几种方法可以做到这一点,请参阅许多示例
因此,如果您的观点有:
import re
from datetime import datetime
def my_view(request):
date_str = '2014-03-25T15:51:29Z'
# must convert to datetime object
date = datetime(*map(int, re.split('[^\d]', date_str)[:-1]))
return render_to_response('template.html', {'date': date})
只有这样,你才能做到:
{{ date|date:'D d M Y' }}
你确定
value
是一个datetime
对象而不是一个字符串吗?可能是因为你从api获得的日期是一个字符串,需要解析为datetime.datetime
?是的,它是一个字符串,我希望一些django魔术字符串可以直接在模板标记workflowOk中使用datetime,我暗暗祈祷不要在视野中工作。因为我有很多这样的字符串日期,它们深深地嵌套在一个对象中。但这似乎是唯一的解决办法。干杯!是的。date
tempalte过滤器不会对任何不是datetime
对象的对象进行操作。