3장 장고프레임워크
*장고의 애플리케이션 개발 방식
-MTV 패턴
클라이언트의 요청을 받으면 URLconf 이용하여 URL 분석
=> URL 분석 결과를 바탕으로 뷰 결정
=> 로직 실행 후 DB 처리가 필요하면 모델을 통해 처리, 결과 반환
=> 템플릿 사용하여 전송할 HTML 파일 생성
=> 최종 결과로 HTML 파일 응답
*Model: DB 설계
장고는 ORM 방식을 사용하여 DB에 쉽게 엑세스 가능
하나의 모델 클라스 => 테이블 (appname_classname과 가타이 테이블 생성)
모델 클라스의 속성 => 컬럼
*템플릿
-.html 확장자, 장고의 템플릿 시스템 문법에 맞춰 장성
-적절한 디렉토리에 위치 필요
=> TEMPLATE_DIRS 및 INSTALLED_APPS에서 지정한 디렉토리 검색 (settings.py), 지정된 순서대로 검색
=> TEMPLATE_DIRS 항목에 지정된 디렉토리를 먼저 찾고
=> 그 다음에 IINSTALLED_APPS 항목의 디렉토리 검색 (해당 폴더의 하위 templates)
*URLconf- URL설계: Elegant URL
-urls.py 파일에 URL과 처리함수(VIew)를 매핑 => 이런 매핑을 URLconf라고 함
-장고에서 URL을 분석하는 순서:
settings.py 파일의 ROOT_URLCONF 를 ㅌ통해 URLconf(urls.py) 위치 탐색
=> URLconf 모듈 로딩, urlpatterns 변수의 URL 리스트 검사
=> 위에서부터 리스트 검사, 매칭되면 검사 종료
=> 매칭된 URL 뷰 호출, 호출시 HttpRequest 객체와 매칭시 추출한 단어를 뷰에 인자로 넘김
=> 매칭에 실패시 에러 처리 뷰 호출
*View- 로직 설계
-웹 요청을 받아서 로직 처리 => 데이터를 HTML로 변환하기 위한 템플릿 처리 => 최종 응답 데이터를 웹 클라이언트로 반환
*polls 앱 만들어보기
'backend > django' 카테고리의 다른 글
5장 실습 예제 확장 (0) | 2017.03.10 |
---|---|
4장 장고핵심기능: admin, shell, template system, form, CBV, LOG (0) | 2017.03.09 |
기본편 1장 웹프로그램의 이해, 2장 파이썬 웹 표준 라이브러리 (0) | 2017.03.08 |
실전편- Blog 앱 만들기 (0) | 2017.03.06 |
장고 개발 기본, Bookmark 앱 만들기 (0) | 2017.03.05 |