Я новичок в структуре django. Я сомневаюсь в пакете библиотеки. может ли кто-нибудь объяснить мне о функции template.library() и в какой цели мы используем @ register.filter() перед запуском функции. Я определил код ниже.Какова цель использования template.library() и @ register.filter() в приведенном ниже коде
from django import template
register = template.Library()
@register.filter()
def boldcoffee(value):
'''Returns input wrapped in HTML <b> tags'''
return '<b>%s</b>' % value
Не могли бы вы вкратце объяснить, с какой целью будет использоваться –
с помощью {{some_var | boldcoffee}}, мы можем напрямую вызвать имя метода boldcoffee() на странице шаблона. Тогда почему мы используем @ register.filter() здесь. –
'boldcoffee()' не является методом 'some_var', поэтому мы не можем называть его напрямую, как' {{some_var.boldcoffee}} '. Когда мы регистрируем эту функцию в качестве фильтра, мы можем применить эту функцию к любой переменной var/constant в шаблоне. Например: '{{" some string "| boldcoffee}}'. – catavaran