8번째 줄: |
8번째 줄: |
| 특수기능을 사용할 때 외엔 그닥 쓰이지 않는다. | | 특수기능을 사용할 때 외엔 그닥 쓰이지 않는다. |
| | | |
− | ==탬플릿 필터==
| + | =탬플릿 필터= |
| 파이프문자를 사용하여 함수처럼 작용한다. | | 파이프문자를 사용하여 함수처럼 작용한다. |
| | | |
26번째 줄: |
26번째 줄: |
| 하지만, HTML태그를 그대로 사용해야 할 때가 있는데, safe필터를 사용하여 해당부분의 제한만 풀거나 {%autoescape%}태그를 사용하여 {%endautoescape%} 사이의 이스케이프를 방지한다. | | 하지만, HTML태그를 그대로 사용해야 할 때가 있는데, safe필터를 사용하여 해당부분의 제한만 풀거나 {%autoescape%}태그를 사용하여 {%endautoescape%} 사이의 이스케이프를 방지한다. |
| |- | | |- |
− | |<code><nowiki>|default:"문자열"</nowiki></code> | + | | |
− | |값이 없거나 False인 경우 대체할 문자열을 지정한다. | + | | |
| |- | | |- |
− | |<nowiki>|truncatechars:숫자</nowiki> | + | | |
− | |제목이 길어질 때 특정 숫자의 글자만 나타내고 싶을 때 사용한다. | + | | |
| |- | | |- |
| |<nowiki>|timesince</nowiki> | | |<nowiki>|timesince</nowiki> |
39번째 줄: |
39번째 줄: |
| 각종 필터함수를 만들 수도 있지만 기능에 관련한 것들은 가능하면 view에서 처리하는 편이 디자이너와의 협업에 좋다. | | 각종 필터함수를 만들 수도 있지만 기능에 관련한 것들은 가능하면 view에서 처리하는 편이 디자이너와의 협업에 좋다. |
| | | |
− | == 커스텀 필터 만들기 == | + | === 문자열 관련 === |
| + | {| class="wikitable" |
| + | !필터 |
| + | !설명 |
| + | |- |
| + | |<code><nowiki>|default:"문자열"</nowiki></code> |
| + | |값이 없거나 False인 경우 대체할 문자열을 지정한다. |
| + | |- |
| + | |<nowiki>|truncatechars:숫자</nowiki> |
| + | |제목이 길어질 때 특정 숫자의 글자만 나타내고 싶을 때 사용한다. |
| + | |- |
| + | |<nowiki>|truncatewords:숫자</nowiki> |
| + | |특정 개수의 단어만 나타내고 싶을 때. |
| + | |- |
| + | |<nowiki>|linebreaks</nowiki> |
| + | |마크다운을 사용하지 않고 줄바꿈만 반영하고 싶을 때. |
| + | |} |
| + | = 커스텀 필터 만들기 = |
| 놀랍게도 탬플릿 필터 안에 뺄셈이 없다. 하여간, 이런저런 경우 커스텀 필터를 만들어주어야 하는 경우가 생기는데, 빼기 필터를 만들 경우, 다음과 같이 진행한다. | | 놀랍게도 탬플릿 필터 안에 뺄셈이 없다. 하여간, 이런저런 경우 커스텀 필터를 만들어주어야 하는 경우가 생기는데, 빼기 필터를 만들 경우, 다음과 같이 진행한다. |
| {| class="wikitable" | | {| class="wikitable" |