Môi trường: Django 2.2
- Mã ví dụ:
from django.template.defaulttags import register
@register.filter(name='lookup')
def lookup(value, arg):
return value.get(arg)
Tôi đặt mã này vào một tệp có tên template_filters.py trong thư mục dự án của tôi có tên portfoliomgr
Bất kể bạn đặt mã bộ lọc ở đâu, hãy đảm bảo bạn có __init__.py trong thư mục đó
Thêm tệp đó vào phần thư viện trong phần mẫu trong tệp projectfolder / settings.py của bạn. Đối với tôi, đó là portfoliomgr / settings.py
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
'libraries':{
'template_filters': 'portfoliomgr.template_filters',
}
},
},
]
Trong mã html của bạn tải thư viện
{% load template_filters %}