환경 : 장고 2.2
- 예제 코드 :
from django.template.defaulttags import register
@register.filter(name='lookup')
def lookup(value, arg):
return value.get(arg)
이 코드를 templatemgr이라는 프로젝트 폴더의 template_filters.py 파일에 넣습니다.
필터 코드의 위치에 상관없이 해당 폴더에 __init__.py 가 있는지 확인하십시오
projectfolder / settings.py 파일의 템플릿 섹션에있는 라이브러리 섹션에 해당 파일을 추가하십시오. 나를 위해, 그것은 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',
}
},
},
]
html 코드에서 라이브러리를로드하십시오.
{% load template_filters %}