对Django的timeuntil输出进行更精细控制吗?
2 个回答
0
不,timeuntil
这个东西没有任何选项,但你可以很简单地自己创建一个模板标签,基于 timeuntil
,让它做你想要的任何事情。可以参考这个链接:https://code.djangoproject.com/browser/django/tags/releases/1.3/django/template/defaultfilters.py(第729行)
3
如果你只想显示月份,可以写一个简单的模板过滤器,这个过滤器会把字符串按逗号分开,然后返回分开后列表里的第一个项目。这个过滤器的代码大概是这样的:
from django.template import Library
register = Library()
@register.filter
def split_timeuntil(duration):
return duration.split(",")[0]
然后在你的模板中使用:{{rental_till|timeuntil|split_timeuntil}}
不过,timeuntil
这个过滤器的格式化方式和 date
不太一样。你可以很简单地创建一个自定义过滤器,返回你想要的格式,只需要复制 timeutil
的代码,分别在 django/template/defaultfilters.py
和 django/utils/timesince.py
中找到就可以了。