목차
1장 웹프로그래밍
1.1 HTTP 와 요청/응답 구조 3
1.2 프론트엔드와 백엔드의 역할 6
1.3 데이터베이스의 활용 8
1.4 URL 과 리소스 식별자 8
1.5 CGI 와 쓰레드 12
1.6 웹서버와 웹애플리케이션 서버 13
1.7 RESTful 아키텍처 14
1.8 API 15
1.9 보안 15
2장 개발준비
2.1 프로젝트 디렉토리 생성 19
2.2 파이썬 설치 20
2.3 가상환경(venv) 구성 21
2.4 가상환경 진입 22
2.5 편리한 가상환경 진입환경 구성 23
2.6 장고(Django) 패키지 설치 25
2.7 PIP 패키지 최신버전으로 업그레이드 27
2.8 장고(Django) F/W 설치 28
2.9 IDE 설치 29
2.10 Django 웹서버 구동 31
2.11 사이트 접속 32
3장 웹사이트 개발 과정
3.1 도달 목표 수준 39
3.2 Django 프레임워크 기반 코딩 프로세스 40
3.3 애플리케이션 생성 44
3.4 Config 폴더의 settings.py 45
3.5 Config 폴더의 urls.py 49
3.6 webapp 폴더의 urls.py 50
3.7 간단한 웹서비스 구현 52
3.8 MVT 패턴 중 V(View) 구현 53
3.9 MVT 패턴 중 T(Template) 구현 55
3.10 정적파일 업로드 63
3.11 웹사이트 접속 및 동작 확인 63
4장 템플릿 시스템
4.1 템플릿 변수(Template Variable) 72
4.2 템플릿 필터(Template Filter) 73
4.3 템플릿 태그(Template Tag) 74
4.4 템플릿 상속(Template Inheritance) 75
4.5 템플릿을 활용하는 웹사이트 개발 76
5장 모델(Model)
5.1 장고의 기본 테이블과 관리자 페이지의 소개 87
5.2 SQLite 데이터베이스와 DB 브라우저 사용 91
5.3 모델 정의 및 테이블 생성 95
5.4 DB 스키마 생성 97
5.5 모델과 관리자 페이지 연동 101
5.6 테이블에 데이터 입력 102
5.7 웹사이트에서 읽어오기 106
6장 모델폼(ModelForm)
6.1 게시판 모델 생성 118
6.2 데이터베이스에 모델 적용 119
6.3 URL 매핑과 HTML 폼 작성 121
6.4 ModelForm 활용 121
6.5 포스팅 처리 124
6.6 템플릿 작성 126
6.7 ModelForm 출력 방식 128
7장 게시판 CRUD 처리
7.1 CRUD 이해하기 139
7.2 게시판 UI 구현 141
7.3 댓글 작성 페이지 145
7.4 모델폼(ModelForm) 생성 147
7.5 모델(Model) 생성 149
7.6 URL 패턴 구성 151
7.7 RESTful 함수 구현 152
8장 예외처리 (Exception Handling)
8.1 예외처리의 이점 163
8.2 장고에서의 예외처리 기본방식 164
8.3 특정한 경우의 예외 처리 165
9장 로깅 (Logging)
9.1 로깅의 구성 요소 171
9.2 로깅 설정 173
9.3 로그 전파 174
9.4 로깅 적용 175
10장 인증 및 인가
10.1 로그인, 로그아웃 및 가입 화면 182
10.2 로그아웃 로직 183
10.3 가입 처리 184
10.4 인가 187
10.5 로그인 처리 188
11장 배포
11.1 리버시 프록시 198
11.2 Gunicorn 설치 199
11.3 Nginx 설정 202
부록 209