강의 링크: Learn Django by Building an Online Marketplace – Python Tutorial for Beginners
# django-admin
django-admin은 장고 프로젝트 생성 및 관리를 할 때 사용하는 CLI이다. 장고 설치 시 함께 제공되며, 여러 명령어를 통해 장고 프로젝트를 설정, 관리, 디버깅할 수 있도록 한다.
## 주요 명령어
django-admin startproject <프로젝트명>
=> 새로운 장고 "프로젝트" 디렉토리를 생성
=> 해당 디렉토리에는 프로젝트의 초기 설정 파일, WSGI 설정 파일(wsgi.py) 등이 포함됨.
*WSGI(Web Server Gateway Interface): 파이썬 웹 애플리케이션과 웹 서버 간의 표준 인터페이스를 정의한, 파이썬 웹 표준 프로토콜. 파이썬 애플리케이션이 다양한 웹 서버와 상호작용할 수 있도록 설계되었다. Django, Flask 같은 프레임워크들은 WSGI를 통해 웹 서버와 통신한다. (cf. ASGI - 지금 단계에서는 넘어가고 나중에 비동기 기능 개발할 때 알아보자.😗)
WSGI의 작동 원리는 다음과 같다. :
1. 클라이언트가 브라우저를 통해 요청을 보낸다.
2. 웹 서버(Nginx, Apache 등)가 요청을 받는다.
3. WSGI를 통해 요청을 파이썬 애플리케이션에 전달한다.
4. 파이썬 애플리케이션은 요청을 처리한 뒤, WSGI를 통해 HTTP 응답을 웹 서버로 반환한다.
5. 웹 서버가 응답을 클라이언트에게 전달한다.
*이 명령어를 통해 생성되는 wsgi.py, asgi.py 파일은 웹 서버 진입 파일이다.
django-admin startapp <앱이름>
=> 프로젝트 내에서 사용할 새로운 "애플리케이션(앱)" 디렉토리를 생성
=> 여기서 말하는 앱은, 장고 프로젝트의 기능을 나누는 기본 단위다.
django-admin makemigrations
=> DB 모델 변경사항을 기반으로 마이그레이션 파일을 생성
django-admin migrate
=> 생성된 마이그레이션 파일을 DB에 적용하여 테이블 구조를 업데이트
django-admin runserver
=> 개발 서버를 실행
django-admin createsuperuser
=> 장고의 어드민 페이지에 로그인할 수 있는 관리자 계정 생성
# startproject, startapp
$ python manage.py startproject market
$ cd market
$ python manage.py startapp core
market이라는 이름의 장고 프로젝트를 만들고, market 프로젝트 안에 core라는 이름의 애플리케이션을 생성한다.
그러면 다음과 같이 market 폴더 안에 core 폴더가 만들어진 모습을 확인할 수 있다.
이렇게 앱을 생성했으면 {project}/{project}/settings.py 파일의 INSTALLED_APPS 목록에 방금 생성한 앱의 이름을 추가해줘야 한다.
'학습 내용 > Back-End' 카테고리의 다른 글
[freeCodeCamp] Django로 쇼핑몰 만들기 실습 - 6. SQLite (1) | 2024.12.10 |
---|---|
[freeCodeCamp] Django로 쇼핑몰 만들기 실습 - 5. 로그인 기능 (0) | 2024.12.04 |
[freeCodeCamp] Django로 쇼핑몰 만들기 실습 - 4. 회원가입 기능 (0) | 2024.12.04 |
[freeCodeCamp] Django로 쇼핑몰 만들기 실습 - 3. 어드민 페이지 (1) | 2024.11.25 |
[freeCodeCamp] Django로 쇼핑몰 만들기 실습 - 2. 뷰(view) 만들기 (0) | 2024.11.24 |