본문 바로가기

인문학도 개발일지/웹프로그래밍

Django 개념정리

그동안 너무 실습하면서 장고 관련 개념들이 머릿속에서 뒤죽박죽이 된 것 같아서 잘 정리된 강의를 통해 개념을 다시 정리해본다.

그리고 다시 실습으로!

※ 강의참고

 

Django 초보 가이드 - 실습을 통해 알아보는 장고 입문 - 인프런

웹프레임 워크 장고(Django) 를 소개부터 기본적인 사용법을 알아봅니다. 입문 웹 개발 프로그래밍 언어 Django 온라인 강의 Django 초보

www.inflearn.com

 

 

MVC & MVT

Model

데이터를 입력하고 전송받으면 데이터베이스 서버에 저장되는데 이것을 다루는 것이 모델

안전하게 데이터를 저장

View

데이터를 적절하게 유저에게 보여줌

유저가 원하는 형태의 데이터로 전송

Controller: Template in Django

사용자의 입력과 이벤트에 반응하여 Model과 View를 업데이트

https://www.essenceandartifact.com/2012/12/the-essence-of-mvc.html

 

Essence of MVC

The Model-View-Controller pattern (MVC) was first described at Xerox PARC by Trygve Reenskaug in 1979: MVC was conceived as a general sol...

www.essenceandartifact.com

 

 

 

 

 

Django 개념

장고 구조

 

 

장고 작동원리

 

 

 

 

 

Project와 App

하나의 프로젝트가 하나의 웹사이트

프로젝트 안에 다양한 기능

의미있는 기능을 app으로 관리

 

 

 

 

 

Settings.py

프로젝트 환경 설정 파일

DEBUG

- 디버그 모드 설정

- 디버그모드 트루로 두면 에러 확인 가능

- false로 해둬야 배포시에 사용자들이 확인할 수 없다

INSTALLED_APPS

- pip로 설치한 앱 또는 본인이 만든 app을 추가

MIDDLEWARE_CLASSES

- request와 response 사이의 주요 기능 레이어

- 인증, 보안 관련 내용들을 다룸

TEMPLATES

- django template 관련 설정, 실제 뷰(html, 변수)

DATABASES

- 데이터베이스 엔진의 연결 설정

STATIC_URL

- 정적 파일의 URL(css, javascript, image, etc.)

 

 

 

 

 

Manage.py

프로젝트 관리 명령어 모음

주요 명령어

- startapp: 앱생성

- runserver: 서버 실행

- createsuperuser:  관리자 생성

- makemigrations app: app의 모델 변경 사항 체크

- migrat: 변경 사항을 DB에 반영

- shell: 쉘을 통해 데이터를 확인

- collectstatic: static 파일을 한 곳에 모음