바뀜
둘러보기로 가기
검색하러 가기
← 이전 편집
3. 장고 탬플릿 필터
(편집)
2022년 11월 18일 (금) 11:31 판
157 바이트 추가됨
,
2022년 11월 18일 (금) 11:31
편집 요약 없음
23번째 줄:
23번째 줄:
|-
|-
|<code><nowiki>|safe</nowiki></code>
|<code><nowiki>|safe</nowiki></code>
−
|XSS를 막기 위해 HTML에서 쓰이는
문자들은
자동으로 이스케이프
처리한다
.
+
|
view에서 텍스트 데이터를 가공해 보내면 html 안에서 "내용" 형식으로 담긴다.
+
XSS를 막기 위해 HTML에서 쓰이는
문자들을
자동으로 이스케이프
처리하는 것이다
.
하지만, HTML태그를 그대로 사용해야 할 때가 있는데, safe필터를 사용하여 해당부분의 제한만 풀거나 {%autoescape%}태그를 사용하여 {%endautoescape%} 사이의 이스케이프를 방지한다.
하지만, HTML태그를 그대로 사용해야 할 때가 있는데, safe필터를 사용하여 해당부분의 제한만 풀거나 {%autoescape%}태그를 사용하여 {%endautoescape%} 사이의 이스케이프를 방지한다.
|-
|-
81번째 줄:
82번째 줄:
−
@register.filter
+
@register.filter
()
def sub(value, arg):
def sub(value, arg):
return value - arg
return value - arg
106번째 줄:
107번째 줄:
* 앱 안에 <code>templatetags</code> 디렉터리를 만든다.
* 앱 안에 <code>templatetags</code> 디렉터리를 만든다.
* 이 디렉터리 안에 <code>custom_tags.py</code>를 만든다.(이름은 짓기 나름)
* 이 디렉터리 안에 <code>custom_tags.py</code>를 만든다.(이름은 짓기 나름)
+
* @register 안의 경로는, 해당 필터를 구현할 html 경로를 지정한다.
|<syntaxhighlight lang="python">
|<syntaxhighlight lang="python">
from django import template
from django import template
121번째 줄:
123번째 줄:
|탬플릿 안에서 필터를 불러온 후 사용한다.
|탬플릿 안에서 필터를 불러온 후 사용한다.
−
+
* custom_tags는 필터를 저장한 파일명이다
.
−
하고 나면 탬플릿 파일이 없다는 에러가 뜰텐데, 적절히 만들어주면 끝
.
|<syntaxhighlight lang="html+django">
|<syntaxhighlight lang="html+django">
{% load custom_tags %}
{% load custom_tags %}
Sam
사무관
,
인터페이스 관리자
,
관리자
, 교사
편집
1,408
번
둘러보기 메뉴
개인 도구
로그인하지 않음
토론
기여
계정 만들기
로그인
이름공간
문서
토론
변수
보기
읽기
편집
원본 편집
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
도구
특수 문서 목록
인쇄용 판