Python Django
Django를 이용한 프로그래밍 #5
거나미스
2019. 1. 2. 11:35
반응형
Templates(HTML)에서 사용되는 문법 편
- 제어를 위한 문법
- {% %} 의 기호를 사용
- 기본 문법은 Python을 따름
- 반복문
- {% for data in datalist %}
- {{data}}
- {% endfor %}
- 비교문
- {% if %}
- {% elif %}
- {% else %}
- {% endif %}
- 값 저장
- {% with var = data %}
- {{ var }} is storaged value
- {% endwith %}
- URL 하드 코딩을 방지
- {% url %}
- 예) {% url 'namespace: view-name' arg1 arg2 %}
- namespace는 urls.py에서 설정한 이름
- view-name은 urls.py에서 설정한 URL패턴 이름
- CSRF 공격 방지
- {% csrf_token %}
- form x태그 윗줄에 삽입
- 사용자 정의 태그 및 필터 로딩
- {% load %}
- 예) {% load lib package.plib %}
- 변수를 위한 문법
- {{ }} 기호를 사용
- 사용기호 주의 : AngularJS의 문법과 비슷함
- {{ 변수명 }} 으로 사용되며, Django에서 내부의 내용을 출력
- 생성된 변수의 초기값은 빈 문자열 값
- 변수명에 . (dot)을 사용하면 다음 순서로 확인 과정을 거침
- 사전(Dic) 타입인지 확인
- 해당 속성인지 확인
- 리스트 타입인지 확인
- 필터
- 소문자로 변경 {{ str | lower }}
- 특수 문자 이스케이프 {{ str | escape }}
- 특정 갯수 문자 리턴 {{ str | truncatewords: 5}} 앞에서 5개 문자를 리턴 (개행문자 제거됨)
- 리스트 내용 합치기 {{ listdata | join : " - "}} listdata의 내용을 - 으로 연결 시켜 리턴
- 변수 값 확인 {{ variable | default : "None"}}
- 변수 길이 리턴 {{ variable | length }}
- HTML 태그 제거 {{ str | striptags }}
- 변수값이 1이 아니면 접미사 붙임 {{ variable | pluralize : "s" }} // 값에 따라 작업이 필요할경우 사용
- 합 연산 {{ variable | add:"2" }} // 문자열의 경우 문자열 조합, 리스트는 리스트를 합침, 숫자는 더함
- 기타