У меня есть существующий тег шаблона, show_next_event
:
def show_next_event():
try:
e = Event.objects.filter(published='1').order_by('date').filter(date__gte=datetime.date.today())[0]
except IndexError:
e = ''
return {'event': e}
register.inclusion_tag('events/next_event.html')(show_next_event)
Я хочу абстрагировать шаблон.Первое, что приходит на ум, это изменить show_next_event
на next_event
, а затем добавить две новые функции;show_next_event
и show_next_event_badge
.Я надеюсь, что смогу сделать что-то вроде следующего, но оно не будет работать как есть:
def next_event():
try:
e = Event.objects.filter(published='1').order_by('date').filter(date__gte=datetime.date.today())[0]
except IndexError:
e = ''
return {'event': e}
def show_next_event():
next_event
register.inclusion_tag('events/next_event.html')(show_next_event)
def show_next_event_badge():
next_event
register.inclusion_tag('events/next_event_badge.html')(show_next_event_badge)
Или есть еще лучшее решение?