📑 장고 사용하기
- 가상환경 생성 및 활성화
python -m venv venv
source venv/Scripts/Activate
- Django 설치하기
pip install django==3.2
- 프로젝트 생성하기
django-admin startproject [프로젝트명] .
- 프로젝트 이름에는 Python이나 Django에서 사용중인 키워드를 피해야 한다.
- '-' 하이픈도 사용할 수 없다.
- ex) Django, text, class, django-test등
- django 서버 시작하기
python manage.py runserver
- Application 생성하기
python manage.py startapp [앱이름]
- Application명은 복수형으로 하는 것을 권장
- Application 등록하기
INSTALLED_APPS=[
'앱이름',
...,
]
- 프로젝트에서 앱을 사용하기 위해서는 반드시 INSTALLED_APPS 리스트에 추가해야한다.
- INSTALLED_APPS는 Django Installation에 활성화 된 모든 앱을 지정하는 문자열 목록이다.
📑 프로젝트내 파일
- _ init _ .py
: Python에게 이 디렉토리를 하나의 Python 패키지로 다루도록 지시하는 파일이다.
- asgy.py
: Asyncrhonous Server Gateway Interface
: Django 애플리케이션이 비동기식 웹 서버와 연결 및 소통하는 것을 돕는 파일이다.
- settings.py
: 애플리케이션의 모든 설정을 포함한 파일이다.
- urls.py
: 사이트의 url과 적절한 views의 연결을 지정한다.
- wsgi.py
: Web Server Gateway Interface
: Django 애플리케이션이 웹 서버와 연결 및 소통하는 것을 돕는다.
- manage.py
: Django 프로젝트와 다양한 방법으로 상호작용하는 커맨드라인 유틸리티
📑 Application 내 파일
- admin.py
: 관리자용 페이지를 설정하는 곳
- apps.py
: 앱의 정보가 작성된 곳
- models.py
: 앱에서 사용하는 Model을 정의하는 곳
- tests.py
: 프로젝트의 테스트 코드를 작성하는 곳
- views.py
: view 함수들이 정의 되는 곳
📑 Project와 Application
- Project
: 프로젝트는 앱의 집합(Collection of apps)
: 프로젝트에는 여러 앱이 포함될 수 있다.
: 앱은 여러 프로젝트에 있을 수 있다.
- Application
: 앱은 실제 요청을 처리하고 페이지를 보여주고 하는 등의 역할을 담당
: 하나의 프로젝트는 여러 앱을 가진다.
: 일반적으로 앱은 하나의 역할 및 기능 단위로 작성한다.