"3. 장고 탬플릿 필터"의 두 판 사이의 차이

Pywiki
둘러보기로 가기 검색하러 가기
잔글
26번째 줄: 26번째 줄:
 
|<code><nowiki>|default:"문자열"</nowiki></code>
 
|<code><nowiki>|default:"문자열"</nowiki></code>
 
|값이 없거나 False인 경우 대체할 문자열을 지정한다.
 
|값이 없거나 False인 경우 대체할 문자열을 지정한다.
 +
|-
 +
|<nowiki>|truncatechars:숫자</nowiki>
 +
|제목이 길어질 때 특정 숫자의 글자만 나타내고 싶을 때 사용한다.
 
|}더 많은 필터는 https://docs.djangoproject.com/en/3.1/ref/templates/builtins/ 등의 문서를 뒤지자.
 
|}더 많은 필터는 https://docs.djangoproject.com/en/3.1/ref/templates/builtins/ 등의 문서를 뒤지자.
  
 
각종 필터함수를 만들 수도 있지만 기능에 관련한 것들은 가능하면 view에서 처리하는 편이 디자이너와의 협업에 좋다.
 
각종 필터함수를 만들 수도 있지만 기능에 관련한 것들은 가능하면 view에서 처리하는 편이 디자이너와의 협업에 좋다.
 
[[분류:장고 탬플릿]]
 
[[분류:장고 탬플릿]]

2021년 6월 15일 (화) 16:15 판

1 개요

탬플릿 내에서 함수처럼 쓰이는 기능이다.(굳이 탬플릿에서 처리할 게 아니라, 연산은 view에서 처리한 후 결과 변수로 넣는 편이 편할 것 같은데..)

특수기능을 사용할 때 외엔 그닥 쓰이지 않는다.

2 탬플릿 필터

파이프문자를 사용하여 함수처럼 작용한다.

{{변수|필터}} 형태로 사용한다.

{{변수|필터|필터2}} 형태로 중복해 사용할 수도 있다.

필터 설명
|add:숫자 숫자만큼 더한다.(음수도 가능)
|safe XSS를 막기 위해 HTML에서 쓰이는 문자들은 자동으로 이스케이프 처리한다.

하지만, HTML태그를 그대로 사용해야 할 때가 있는데, safe필터를 사용하여 해당부분의 제한만 풀거나 {%autoescape%}태그를 사용하여 {%endautoescape%} 사이의 이스케이프를 방지한다.

|default:"문자열" 값이 없거나 False인 경우 대체할 문자열을 지정한다.
|truncatechars:숫자 제목이 길어질 때 특정 숫자의 글자만 나타내고 싶을 때 사용한다.

더 많은 필터는 https://docs.djangoproject.com/en/3.1/ref/templates/builtins/ 등의 문서를 뒤지자.

각종 필터함수를 만들 수도 있지만 기능에 관련한 것들은 가능하면 view에서 처리하는 편이 디자이너와의 협업에 좋다.