Настраиваемый тег шаблона с несколькими аргументами
Я хочу отформатировать дату в будущем на основе дельты времени:
from django import template
from datetime import datetime, timedelta, time
register = template.Library()
@register.simple_tag
def tomorrow(format):
tommorow = datetime.now() + timedelta(days=1)
return tommorow.strftime(format)
def dayfuture(dday, format):
dayfuture = datetime.now() + timedelta(days=dday)
return dayfuture.strftime(format)
Это работает:
{% tomorrow "%A, %d %b, %Y" %}
Но мне не повезло с dayfuture
,
Кроме того, возможно ли иметь несколько пользовательских тегов шаблона в одном файле. Мне не повезло, зарегистрировав второй.
Я использую Django 1.11 Pythone 3.4
1 ответ
Это не работает, потому что вы не зарегистрировали его. Можно иметь несколько тегов шаблона внутри одного файла.
def dayfuture(dday, format):
dayfuture = datetime.now() + timedelta(days=dday)
return dayfuture.strftime(format)
Вы должны поставить декоратор на него, чтобы зарегистрировать его
@register.simple_tag
def dayfuture(dday, format):
dayfuture = datetime.now() + timedelta(days=dday)
return dayfuture.strftime(format)