django 필터 만들기 실례 설명
1. 수요원:
만약에 템플릿 파일에 문자열 변수가 있다면 이 문자열 변수에는 빈칸이 있을 수 없다. 마침 이 템플릿은 여러 개의 보기 함수에 많이 호출된다. 그러면 보기 함수에서 이 문자열 변수를 입을 때마다 문자열을 처리해야 한다. 이것은 상대적으로 번거롭다.django는 필터라는 방식을 제공하여 템플릿에서 통일적으로 처리할 수 있다.
2. 템플릿 라이브러리 준비 작업을 사용자 정의합니다.
템플릿 라이브러리를 만들려면 다음 두 단계로 진행합니다.
첫째, 템플릿 라이브러리를 어디에 두어야 할지 결정합니다.당신은 단독으로 관리자를 통과할 수 있습니다.py startapp에서 사용자 정의 템플릿 라이브러리를 저장하는 앱을 만듭니다.프로젝트 중 어느 앱 아래에도 놓을 수 있습니다.첫 번째 방식을 추천합니다. 첫 번째 방식은 다 쓴 후에 다른 프로젝트에 이식해서 사용할 수 있기 때문입니다.중복 편찬할 필요가 없다.단, 어떤 방식을 사용하든지 간에, 템플릿 라이브러리에 저장된 앱을 settings에 추가해야 합니다.py의 INSTALLEDAPPS 중!!!
둘째, 위에서 선택한 가방 아래templatetags 디렉터리를 만듭니다. 이 디렉터리는 모델스와야 합니다.py와views.py는 같은 차원에 있다.그리고templatetags에 두 개의 빈 파일을 만듭니다: 하나는 입니다init__.py는 이것이 일반적인 폴더가 아니라는 것을 나타냅니다. 이것은 Python 코드 패키지이고, 다른 하나는 템플릿 라이브러리에 저장할 파일입니다. (예: my template.py)그리고 이 라이브러리 파일을 사용해야 하는 템플릿 파일에서 {% load my template.py%}을 사용하여 가져오십시오. 중요한 것은 다시 한 번 말씀드리지만, 이 my 를template.py가 있는 app를settings에 추가합니다.py의 INSTALLEDAPPS에서만 사용할 수 있습니다.
3. 사용자 정의 필터를 만듭니다.
필터는 실제로 하나 또는 두 개의 매개 변수가 있는python 함수입니다.
def removespace(value,arg):
return value.replace(' ',arg)
그런 다음 최근 템플릿을 등록하고 다음 코드를 사용하여 등록합니다.
from django import template
register = template.Library()
@register.filter
def removespace(value,arg):
return value.replace('',arg)
그러면 템플릿을 사용할 때 코드를 사용해서 사용하기만 하면 됩니다.
{{ variable|removespace:"a" }}
그러면 variable 변수의 모든 빈칸을 a로 바꿉니다.
이상은django가 필터를 만드는 실례입니다. 궁금한 점이 있으면 댓글을 남기거나 본 사이트 커뮤니티에 가서 토론을 교류해 주십시오. 읽어 주셔서 감사합니다. 여러분께 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.