Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- allauth
- 장고 로그인
- 장고
- 3학년 마무리
- kakao API
- user 템플릿
- 토이프로젝트
- 웹서버 역할
- username 가져오기
- token 토큰
- if 템플릿
- django
- 정처기
- WAS 차이
- 백엔드
- template 문법
- Kakao Developers
- 웹서버 기능
- 'set' object is not reversible
- 자동 컴파일
- mac북
- 카카오로그인
- login
- Bootstrap5
- for 템플릿
- Web
- 웹
- 대학생
- Django login
- 템플릿 문법
Archives
- Today
- Total
백엔드 개발자를 꿈꾸며...
[Django] 장고 템플릿 태그 및 user관련 템플릿 문법 본문
Template Language
알아볼 템플릿 문법은 총 2가지입니다.
1. 템플릿 태그
2. user관련 문법
본격적으로 포스트를 들어가기전에 예시를 돕기 위한 설정을 하나 세우겠습니다.
"게시판 프로젝트에서 카테고리에 다양한 게시판들을 나열할 기능을 구현할 계획"
{% for in %} ... {% endfor %} 템플릿 태그
board_app/models.py
class BoardName(models.Model):
board_name = models.CharField(max_length=50)
저는 board_name에 5개정도 데이터를 넣었습니다.
모두 아시겠지만 모델을 설정하고 migration화를 진행해주셔야합니다.
board_app/views.py
from .models import BoardName
def index(request):
data = BoardName.objects.all()
return render(request, 'board_app/index.html', {'value': data})
핵심이 되는 것은 사용할 모델을 임폴트하고 .objects.all()로 모든 데이터를 저장하는 과정입니다.
그 다음 딕셔너리 형태로 보내는 것이죠.
board_app/index.html
{% for i in value %}
<li>
<a href="#">{{ i.board_name }}
</a>
</li>
{% endfor %}
이제 html에서 {% for in %} 문법을 사용해 주는 것입니다. 파이썬 문법 그대로 이해하시면 됩니다. value에 있는 값 개수만큼 반복하는 거죠. 제가 5개를 저장해 놓았으니 5번 반복합니다.
{% if %} ... {% elif %} ... {% else %} ... {% endif %} 템플릿 태그
추가로 if에 관한 문법도 사용할 수 있습니다.
{% if i.Count > 100 %}
<p>조회 카운팅이 10이상 입니다.</p>
{% elif i.Count > 60 %}
<p>조회 카운팅이 60이상 100미만 입니다.</p>
{% else %}
<p>조회 카운팅이 60미만 입니다.</p>
{% endif %}
이런 형식으로 사용할 수 있습니다.
항상 for이던 if던 {% endfor %}, {% endif %} 이렇게 마무리 닫기 해주셔야합니다.
그 다음은 user에 대해 간단한 템플릿 문법을 알아보겠습니다.
현재 접속중인 USER의 아이디(username)을 가져오는 방법
html문서에 작성
{{ user.get_username }}
이상 간단하지만 강력한 템플릿 문법에 대한 글이었습니다. 감사합니다.
'백엔드 공부 > Django' 카테고리의 다른 글
[Django] Django-allauth로 Kakao Login, Logout 해보기 (2) | 2024.01.09 |
---|---|
[Django] 장고 토이 프로젝트 시작 (2) | 2024.01.02 |
[Django] 장고 로그인, 로그아웃 구현 (0) | 2023.01.19 |
[Django] 장고 깃허브 gitignore부터 commit, push까지 사용방법 (0) | 2023.01.13 |
[Django] 장고에 부트스트랩5 적용하기 (0) | 2023.01.11 |
Comments