일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Bookmark
- join()
- mongodb
- Django Blog
- 자바스크립트
- 개발
- 북마크만들기
- Blog
- MyPick31
- passport.js
- til
- Django
- 독립영화플랫폼
- JavaScript
- 장고 개발 순서
- 장고 프로젝트
- Node.js
- 장고 프로젝트 순서
- 파이썬 웹프로그래밍 장고
- 알고리즘
- 예술영화추천
- Algorithm
- 장고
- MYSQL
- 프로젝트
- Exercism
- python
- 북마크앱
- ART_Cinema
- 타사인증
Archives
- Today
- Total
Juni_Dev_log
북마크 앱 만들기 ⑥ "템플릿(Template)" with Django 본문
① bookmark_list.html 템플릿 작성하기
북마크 리스트를 화면에 보여주는 템플릿 파일을 코딩할 것이다.
bookmark/templates/bookmark 디렉터리 하위에 템플릿 파일을 둬야 한다.
(bookmark_list.html)
<!DOCTYPE html>
<html>
<head>
<title>Django Bookmark List</title>
</head>
<body>
<div id="content">
<h1>Bookmark List</h1>
<ul>
{% for bookmark in object_list %}
<li><a href="{% url 'detail' bookmark.id %}">{{ bookmark }}</a></li>
{% endfor %}
</ul>
</div>
</body>
</html>
- object_list 객체는 BookmarkLV 클래스형 뷰에서 넘겨주는 컨텍스트 함수이다.
- object_list 객체의 내용을 순회하면서 title을 화면에 순서 없는 리스트를 보여준다. 각 테스트에 URL 링크를 연결한다.
{{bookmark}} → 템플릿 변수. Bookmark 테이블의 특정 레코드 하나를 의미한다.
즉, 특정 Bookmark 객체를 의미하며, 해당 객체를 프린트하면 해당 객체의 str() 메서드를 호출해서 결과를 출력한다.
models.py 에서 str() 메서드를 정의할 때, 다음처럼 그 객체의 title 이 나오도록 정의했다.
def __str__(self):
return self.title
이를 수정해보면 어떻게 바뀌는지도 확인해보자.
def __str__(self):
return "%s %s" %(self.title, self.url)
그리고, 'detail URL 패턴(bookmark/1/형식)'으로 웹 요청을 보낸다는 의미 한다.
URL 패턴을 만들어주는 {% url %} 태그 기능은 자주 사용되므로 정확히 알아두고 넘어가자.
{% url %} 태그 기능
: 템플릿 태그는 URL 패턴에서 URL 스트링을 추출하는 역할을 한다.
② bookmark_detail.html 템플릿 작성하기
북마크 리스트에서 특정 북마크를 클릭하면 상세정보를 보여주는 템플릿 파일을 코딩한다.
(bookmark_detail.html)
<!DOCTYPE html>
<html>
<head>
<title>Django Bookmark Detail</title>
</head>
<body>
<div id="content">
<h1>{{object.title}}</h1>
<ul>
<li>URL: <a href="{{object.url}}">{{object.url}}</a></li>
</ul>
</div>
</body>
</html>
- 제목은 object.title로 지정하고 object는 BookmarkDV 클래스형 뷰에서 컨텍스트 변수로 넘겨주는 특정 객체이다.
- {{object.url}} 템플릿 변수의 내용은 순서 없는 리스트 형식으로 보여준다.
(이전 포스팅)
2020/08/18 - [Project/Bookmark APP 만들기 (Django)] - 북마크 앱 만들기 ⑤ "뷰(View)" with Django
(다음 포스팅)
2020/08/18 - [Project/Bookmark APP 만들기 (Django)] - 북마크 앱 만들기 ⑦ "지금까지의 작업 확인하기" with Django
'Project > Bookmark APP 만들기 (Django)' 카테고리의 다른 글
북마크 앱 만들기 ⑦ "지금까지의 작업 확인하기" with Django (0) | 2020.08.18 |
---|---|
북마크 앱 만들기 ⑤ "뷰(View)" with Django (0) | 2020.08.18 |
북마크 앱 만들기 ④ "URLconf" with Django (0) | 2020.08.18 |
북마크 앱 만들기 ③ "모델(Model)" with Django (0) | 2020.08.18 |
북마크 앱 만들기 ② "뼈대" with Django (0) | 2020.08.18 |
Comments