본문 바로가기
DJANGO

DJANGO 개념 (inflearn)

by olbiizl_ 2021. 9. 30.


Python Django 란?

◼ 파이썬으로 만들어진 무료 오픈 소스 웹 애플리케이션 프레임워크
(Open Source Web Application Framework)

 

◼ 쉽고 빠르게 웹사이트를 개발할 수 있도록 도와주는 구성요소로
이루어져 있어 앱 개발에만 집중할 수 있게 한다.


프레임워크(Framework) 가 왜 필요한가요?

 

우리는 다양한 웹을 개발할 때 로그인, 로그아웃, 게시판 등과 같은 기본적인 기능들을 반복적으로 수행하고 해결해야하는 경우가 많습니다.

이러한 기본적인 기능들을 편리하게 개발할 수 있는 환경을 미리 만들어놓은 것이 프레임워크의 역할입니다.


DjangoMTV 패턴으로 디자인된다.

MTV(Model-Template-View) 

→ 프로젝트의 구성 요소를 Model(모델), Template(템플릿), View(뷰) 로
     MVC에 대응되는 장고의 디자인 패턴

 

1) Model (모델) : DB에 저장되는 데이터

2) Template (템플릿) : 유저에게 보여주는 화면

3) View (뷰) : 모델과 Template를 연결해주는 역할
                                            요청에 따라 결과를 템플릿으로 렌더링하여 응답함


Django의 실행 원리


DjangoProjectApp 으로 이루어져있다.

✅ Project 생성 ▶ 하나의 프로젝트에는 여러 개의 App 이 존재

$django-admin startproject [프로젝트 명]

 

✅ App 생성   $./manage.py startapp [앱 명]


Djangosettings.py는 프로젝트 환경설정 파일이다.

📢 DEBUG ▶ 디버그 모드 설정 (False로 설정해야 사용자에게 노출이 되지 않는다)
📢 INSTALLED_APPS ▶ pip으로 설치한 앱 또는 본인이 만든 앱 추가
📢 MIDDLWARE_CLASSES ▶ request와 response 사이의 주요 기능 레이어
📢 TEMPLATES ▶ django template 관련 설정, 실제뷰(html, 변수)
📢 DATABASES ▶ 데이터베이스 엔진의 연결 설정
📢 STATIC_URL ▶ 정적파일의 URL(css, js, image, etc)


Djangomanage.py는 프로젝트 관리 명령어 모음이다.

주요 명령어

📢 startapp ▶ 앱 생성
📢 runserver ▶ 서버 실행
📢 createsuperuser ▶ 관리자 생성
📢 makemigrations app ▶ app의 모델 변경 사항 체크
📢 migrate ▶ 변경사항을 DB에 반영
📢 shell ▶ 쉘을 통해 데이터 확인
📢 collectstatic ▶ static 파일을 한곳에 모음

 

예시) ./manage.py runserver 0.0.0.0:8080 -> 서버 실행 명령어 사용

반응형

'DJANGO' 카테고리의 다른 글

DJANGO 실습 (inflearn)  (0) 2021.09.30