티스토리 뷰
장고(Django)에서 템플릿(Templates)의 필요성
아래의 코드를 보도록 합시다. HTML 코드가 파이썬으로 직접 코딩 되어 있습니다. 장고(Django)의 뷰(View)에 기술된 샘플 코드인데 이렇게 하드코드(hard-code)하면 여러 가지 문제점이 있습니다.
def current_datetime(request):
now = datetime.datetime.now()html = "<html><body>It is now %s.</body></html>" % now
return HttpResponse(html)
문제가 되는 것들
1. 우선 페이지 디자인 변경이 요구될 때마다 파이썬 코드를 수정해야 합니다. 하지만 보통의 경우 페이지 디자인 변경은 파이썬 코드보다 훨씬 자주 변경되기에 여러모로 귀찮죠. 그래서 파이썬 코드의 변경 없이 디자인을 바꿀 수 있다면 참 편리 할겁니다.
2. 파이썬(Python) 코드를 작성하는 것과 HTML을 디자인하는 것은 엄연히 다른 분야로 이죠. 그래서 대부분의 전문 웹 개발 프로젝트에서 이들 업무들은 각각의 인원 혹은 팀으로 분리합니다. 그런데 위의 코드는 파이썬(Python)과 디자인 코드가 짬뽕이 되어 있군요! 디자이너와 HTML/CSS 작성자는 업무를 수행하기 위해서 파이썬(Python) 코드를 수정할 필요가 없는데 말이죠.
3. 위의 코드는 디자인 코드와 프로그래밍 코드가 섞여 있어서 협업을 할 수 없는 구조입니다. 만약 프로그래머가 파이썬(Python) 코드를 작업하는 것과 동시에 디자이너가 템플릿(templates) 상에서 작업할 수 있다면 가장 효율적일 겁니다. 디자인과 코드가 섞여진 파일에 대해서 한 사람이 다른 사람의 편집 완료를 기다리는 것 보다 말이죠.
해결방법
파이썬(Python) 코드를 페이지 디자인으로 부터 분리하기 위한 가장 깔끔한 방법을 위해 장고(Django)에서는 템플릿 시스템(Template System)을 사용합니다. 자세한 사항은 다음 포스팅에 적어보도록 하겠습니다. 여기까지 장고(Django)에서 템플릿(Templates)가 필요한 이유에 대해 살펴 보았습니다. 이 글은 다음의 원문을 참조해서 적었습니다. 다음 내용이 궁금하신 분들은 원문 웹사이트를 보시면 됩니다. 원문 - http://www.djangobook.com/en/2.0/chapter04/
'잉고래의 코딩' 카테고리의 다른 글
vi 색상변경 : 우분투(Ubuntu) 리눅스(Linux)에 putty 접속 시 vi 도움말 컬러 색상 변경하기 (0) | 2013.04.18 |
---|---|
장고(Django)에서 스태틱 파일(Static Files)이란? (CSS, images) (0) | 2013.04.17 |
자바(Java)와 자바스크립트(JavaScript)의 차이는 인도와 인도네시아의 차이와 같다? (0) | 2013.04.14 |
파이썬(python) 모듈(module)의 이해 (0) | 2013.04.12 |
묵시적 선언(implicit declaration) 오류의 이해 (0) | 2013.04.11 |
- Total
- Today
- Yesterday
- qxd1000a
- 한빛미디어
- 아이나비 Tab XD9
- 캠코더
- 아이나비 패드
- 서평
- 소니 AXP35
- 블랙박스
- 티스토리챌린지
- 박근혜
- CSS
- 소니
- 소니 캠코더
- 아이나비
- 아이나비 태블릿
- SM5
- 아이나비 탭 xd9
- 아이나비 탭 XD11 Pro
- 티스토리
- 블로그
- 소니 핸디캠
- 독서
- 오블완
- 팅크웨어
- Sony
- X1 DASH
- c언어
- AXP35
- cc2530
- 독후감
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |