728x90
Django 시작하기
1. 가상환경 생성 및 활성화
# 가상환경 생성
python -m venv venv
# 가상환경 활성화 - 코드를 친 이후 (venv) 표시가 붙으면 제대로 된 것!
source venv/Scripts/activate
2. Django 설치
pip install django
# 설치 확인
pip list
# 설치 후에는 꼭 freeze해서 현재 설치된 파일들 저장
pip freeze > requirements.txt
# requirements로 설치하기
pip install -r requirements.txt
3. 서버 활성화
python manage.py runserver
프로젝트 생성
- 프로젝트 이름에 python이나 django에서 사용 중인 키워드 및 '-' (하이픈)은 사용 불가
# .을 안붙여주면 프로젝트dir > 프로젝트dir 형태로 생성됨
django-admin startproject firstpjt .
- 생성한 프로젝트의 구조
- __init__.py : 빈 파일, python에게 이 디렉토리를 하나의 python 패키지로 다루도록 지시
- asgi.py : (Asynchronous Server Gateway Interface),
Django 애플리케이션이 비동기식 웹 서버와 연결 및 소통하는 것을 도움 - settings.py : 애플리케이션의 모든 설정을 포함
- urls.py : 사이트의 url과 적절한 views의 연결을 지정
- wsgi.py : (Web Server Gateway Interface), Django 애플리케이션이 웹서버와 연결 및 소통하는 것을 도움
- manage.py : Django 프로젝트와 다양한 방법으로 상호작용하는 커맨드라인 유틸리티
애플리케이션 생성
- 실제로 어떤 역할을 하는 친구가 앱!
- 일반적으로 Application 이름은 복수형으로 하는 것을 권장
python manage.py startapp articles
- 생성한 애플리케이션의 구조
- admin.py : 관리자용 페이지를 설정하는 곳
- apps.py : 앱의 정보가 작성된 곳
- models.py : 앱에서 사용하는 Model을 정의하는 곳
- tests.py : 프로젝트의 테스트 코드를 작성하는 곳
- views.py : view 함수들이 정의되는 곳
- 프로젝트에서 앱을 사용하기 위해서는 반드시 등록이 필요!
- 프로젝트 - settings.py - INSTALLED_APPS 에 앱이름 추가
- INSTALLED_APPS
- Django installation에 활성화 된 모든 앱을 지정하는 문자열 목록
- 주의 사항
- 앱은 반드시 생성 후 등록! : 먼저 등록하고 생성하려면 앱이 생성되지 않음
- INSTALLED_APPS 리스트 순서
: Local apps(내가 만든 앱) - Third party apps(따로 설치한 라이브러리) - Django apps(장고 기본앱)
+) Project & Application
- Project
- 프로젝트는 애플리케이션의 집합
- 프로젝트에는 여러 앱이 포함될 수 있음
- 앱은 여러 프로젝트에 있을 수 있음
- Application
- 앱은 실제 요청을 처리하고 페이지를 보여주고 하는 등의 역할을 담당
- 하나의 프로젝트는 여러 앱을 가짐
- 일반적으로 앱은 하나의 역할 및 기능 단위로 작성
728x90
'PROGRAMMING > Django' 카테고리의 다른 글
[Django] URL, namespace (0) | 2021.09.02 |
---|---|
[Django] HTML Form (0) | 2021.09.02 |
[Django] DTL(Django Template Language), Template 상속 (0) | 2021.09.02 |
[Django] 요청과 응답 (URLS, Views, Templates) (0) | 2021.09.01 |
[Django] 웹 프레임워크, MVC/MTV Pattern (0) | 2021.09.01 |
댓글