바뀜
둘러보기로 가기
검색하러 가기
1번째 줄:
1번째 줄:
+
+
− +
− +
− 장고를 설치하기 전에 가상환경을 만들고, 그 안에 설치하도록 하자.+
−
− 그 안에서 pip install django 를 입력하면 설치를 진행한다.
−
28번째 줄:
27번째 줄:
− +
− +
−
− 1. 웹클라이언트의 요청을 받으면 URL을 분석하여 처리를 담당할 뷰를 정한다.
−
− 2. 뷰는 자신의 로직을 실행, DB처리가 필요하면 모델을 통해 처리 후 결과를 받는다.
−
− 3. 뷰의 처리가 끝나면 템플릿을 통해 클라이언트에 전송할 HTML을 생성, 보낸다.
+
44번째 줄:
38번째 줄:
+
49번째 줄:
44번째 줄:
− +
+
+
+
+
+
+
+
− |++
− !+
− !
−
−
− |
− |
− +
− +
− +
− +
− |+
− |
− +
− |+
− |
− |-
− |Template
− |개발자가 작성한 html파일을 템플릿이라 한다.
− 템플릿의 경로는 settings.py의 TEMPLATE=[ 안에 정의되어 있다. 기본적으로 이 안에서 찾고, 이후에 INSPALLED_APPS에 등록된 앱의 template디렉토리를 찾는다.
− |
− |
86번째 줄:
75번째 줄:
− 1. 디렉토리 파일 구성+
− +
− 2. 실행파일 세팅+
− +
− 3. 테이블 설계, 생성+
−
− 4. 슈퍼유저 생성
→개요
<youtube>https://www.youtube.com/watch?v=oB9lqmgDCmY&feature=youtu.be</youtube>
==개요==
==개요==
웹페이지 작성을 위한 파이썬 프레임워크.
웹페이지 작성을 위한 파이썬 프레임워크. 백엔드를 담당한다.
파이썬 유저에게 있어 결과물을 손쉽게 보여주거나 공유하는 도구가 되기도 해, 기본적인 사용법은 알고 있어야 한다.
파이썬 유저에게 있어 결과물을 손쉽게 보여주거나 공유하는 도구가 되기도 해, 기본적인 사용법은 알고 있어야 한다.
풀스택프레임워크로 기본적인 기능이 다 들어와 있다.(필요치 않은 기능까지도.) 덕분에 빠르고 초보자도 여러가지 신경쓰지 않고 개발이 가능하다.
==학습매체==
==학습==
뷰와 탬플릿, url을 동시에 고려해야 하는 등 다양한 개념들이 복합적으로 엮여 작용하기 때문에 순차적으로 익힌다 한들 종합하기 어렵다. 때문에 처음엔 강의로 기초개념을 잡은 후 서적과 블로깅을 권한다.
뷰와 탬플릿, url을 동시에 고려해야 하는 등 다양한 개념들이 복합적으로 엮여 작용하기 때문에 순차적으로 익힌다 한들 종합하기 어렵다. 때문에 처음엔 강의로 기초개념을 잡은 후 서적과 블로깅을 권한다.
이 앱 안에 MVT가 들어있다.
이 앱 안에 MVT가 들어있다.
===MVT패턴. '''MVT 프레임워크(Model View Template)'''===
===MVT패턴. MVT 프레임워크(Model View Template)===
Model은 DB에 저장되는 데이터, View는 실질적인 프로그램 조직을 의미하며, 데이터를 가공하여 모델과 템플릿을 연결한다. Template은 사용자에게 보여지는 UI.
Model은 DB에 저장되는 데이터, View는 실질적인 조작을 다루며, 데이터를 가공하여 모델과 템플릿을 연결한다. Template은 사용자에게 보여지는 UI.
====간단설명====
====간단설명====
{| class="wikitable"
{| class="wikitable"
|-
!MVT
!MVT
!역할
!역할
|Model
|Model
|데이터베이스에 엑세스.
|데이터베이스에 엑세스.
하나의 모델은 하나의 테이블에 매핑된다. 모델의 속성은 컬럼에 매핑된다. 모델을 정의하면 primarykey는 장고에서 자동으로 부여한다.(직접 지정할 수도 있다.)
|-
|-
|View
|View
|-
|-
|Template
|Template
|데이터를 사용자에게 보여준다.(HTML로 만든다.)
|데이터를 사용자에게 보여준다.(HTML로 만든다.) 개발자가 작성한 html파일을 템플릿이라 한다.
|}
|}
== 작동방식 ==
# 웹클라이언트의 요청을 받으면 URL을 분석하여 처리를 담당할 뷰를 정한다.
# 뷰는 자신의 로직을 실행, DB처리가 필요하면 모델을 통해 처리 후 결과를 받는다.
# 기본적인 연산이 끝나면 템플릿을 불러와 클라이언트에 전송할 HTML을 생성, 보낸다.
{| class="wikitable"
{| class="wikitable"
!순서
!설명
!
!
|-
|-
|URL
|URL
|urls.py에서 뷰를 매핑하는 함수를 작성한다.
|urls.py에서 뷰를 매핑하는 함수를 작성한다.
|-
|-
|View
|View
|
|요청을 받으면 데이터를 갖고 변형.(실질적인 파이썬 코드가 작용하는 부분)
미리 짜여진 탬플릿을 가져다 데이터를 배치하고 return 한다.
|-
(일반적으로 HttpResponse 대신 render함수를 사용한다. 직접 짜는 것보다 html파일을 이용하는 게 편하기 때문이다.)
|Template
|데이터를 사용자에게 보여준다.(HTML로 만든다.) 개발자가 작성한 html파일을 템플릿이라 한다.
|-
|-
|Model
|Model
|하나의 모델은 하나의 테이블에 매핑된다. 모델의 속성은 컬럼에 매핑된다. 모델을 정의하면 primarykey는 장고에서 자동으로 부여한다.(직접 지정할 수도 있다.)
|(부록)필요한 경우에 데이터베이스에 엑세스.
하나의 모델은 하나의 테이블에 매핑된다. 모델의 속성은 컬럼에 매핑된다. 모델을 정의하면 primarykey는 장고에서 자동으로 부여한다.(직접 지정할 수도 있다.)
|}
|}
==프로젝트 뼈대 만들기==
==프로젝트 뼈대 만들기==
# 디렉토리 파일 구성(애플리케이션 구조 설계)
#:회원가입기능, 게시판 기능, 결제기능 등을 어떻게 연결되게 할 것인가.
# 작동방식 설계
# 테이블 설계, 생성
# 슈퍼유저 생성
[[분류:1. 장고 기초]]
[[분류:1. 장고 기초]]