Python으로 만들어진 무료 오픈소스 웹 애플리케이션 프레임워크로 쉽고 빠르게 웹사이트를 개발할 수 있도록 돕는 구성요소로 이루어져 있다.
장점 :
1) 효율적인 개발 환경을 갖춘다.
Django는 MTV 패턴을 따른다.
다른 프레임워크(ex : Spring 등)들은 MVC 패턴을 따른다.
2) 기본적인 보안 설계가 많이 되어 있다.
3) DB를 설치하지 않아도 자동으로 제공되는 등 A~Z까지 다 만들지 않아도 됨.
4) Python 기반 프레임워크이기 때문에 데이터 분석이나 AI 활용에 유리하다.
Putty 터미널을 켜주고 다음 명령어를 입력하여 python3를 설치해준다.
apt install python3-pip
pip
: python과 관련된 패키지를 설치하거나 삭제하도록 관리해주는 프로그램apt
: Ubuntu에서 프로그램을 설치할 때 사용하는 명령어그 후 아래 명령어로 Django를 설치해주면 끝
pip3 install Django
ls
: 자신이 위치한 폴더의 내용물 확인pwd
: 현재 나의 위치 확인cd [이동할 폴더]
: 폴더 이동cd ..
: 한 단계 상위 폴더로 이동mkdir [만들 폴더 이름]
: 폴더 생성rm -rf [삭제할 폴더명]
: 폴더 삭제vi [파일명]
: 파일 열기, 마우스 없이 커서 이동으로 조작 esc
: 기본 모드로 전환 i
: 커서 위치에서 편집 o
: 현재 커서 한줄 추가 + 편집모드dd
: 잘라내기 (dd3-3줄 삭제) 등 사용가능dw
: 한 단어 삭제yy
: 복사 (yy3 - 3줄 복사)yw
: 한단어 복사p
: 붙여넣기u
: 되돌리기x
: 커서안의 문자 하나 삭제:q!
: 저장하지 않고 파일 닫고 나가기 :wq!
: 저장 후 파일 닫고 나가기프로젝트 :
자기가 만들고자 하는 작업물(ex : 쇼핑몰)을 프로젝트라고 부른다.
1개의 프로젝트는 최소 1 이상의 n개의 App으로 구성되어 있다.
App :
각각의 독립된 기능을 수행할 수 있는 단위
App과 App은 서로가 절대 의존적일 수 없다! 반드시 독립적이어야 함!
/root
경로 안에 Django를 사용할 폴더를 만들어 준다.'ssac-django'
이다.아래와 같은 명령어로 프로젝트를 만들어준다.
django-admin startproject [프로젝트명]
프로젝트를 생성하면 그 안에 동일한 이름의 App이 자동으로 생성된다. 이 App은 다른 App과의 독립성을 유지하기 위해 해당 장소에만 사용할 수 있는 기능 등을 설정해주고 관리하는 데 사용됨.
manage.py
: 서버를 실행시키기 위한 핵심 파일
아래와 같은 명령어로 프로젝트 안에 다른 App폴더를 하나 만들어준다.
django-admin startapp [App명]
'member'
App 폴더가 잘 만들어진 것을 볼 수 있다.settings.py
파일을 열기vi '파일명'
을 입력해서 들어가면 된다.vi창 내부는 마우스가 아닌 커서와 방향키로 이동해야 한다.
내부에 내용을 입력하고 싶다면 i
를 눌러서 입력모드로 전환시킨다.
내용 반영했으면 esc
키를 누르고 :wq!
를 눌러서 저장 후 파일을 닫는다.
전 단계에서 터미널로 App을 생성했지만 현재 파일 안에 app의 이름을 등록해주어야 한다. 이렇게 안하면 향후 프로젝트 만드는 데 문제가 생긴다! 나중에 뇌정지오기 싫으면 그냥 만들어두자
접근 소스는 모든 장소에서 접속할 수 있도록 0.0.0.0
으로 설정해준다.
PORT번호는 자기가 원하는 걸로 (필자는 8100번으로 설정하겠음)
App폴더에서 상위 폴더 경로로 다시 이동하기 위해서는 cd ..
를 입력해야 한다.
아래와 같은 명령어로 서버를 실행시킨다.
python3 manage.py runserver ['접근 소스':'PORT 번호']
공인 IP 주소 : PORT번호
를 입력하고 접속한다.1. Product Server(실사용 서버)는 에러 로깅 불가
2. Development Server(개발용 서버)는 에러 로깅을 해준다.