Я использую 5 - 6 пользовательских тегов шаблонов.
Каждый из них похож на следующее:
@register.filter(name = 'time_left')
def time_left(obj):
if not obj:
return -1
if not obj.has_offer_expired():
return obj.time_left()
return None
У меня есть это в моем models.py
:
def has_offer_expired(self):
return self.end_time <= timezone.now()
def time_left(self):
return int((self.end_time - timezone.now()).total_seconds())
При каждом использовании тега шаблона {{ offer | time_left }}
будет ли это вызывать запрос к базе данных?Или offer
передается в функцию тегов шаблона, и ее атрибуты используются без каких-либо дополнительных запросов к базе данных?
Подробное объяснение работы тегов шаблонов за кулисами приветствуется!
Спасибо.
Изменить: Пожалуйста, добавьте причину, прежде чем голосовать вниз вопрос!