Django

[Django] 개발환경 세팅

dullin 2024. 11. 12. 13:42

필요 스택

Python 3.10 이상을 지원하는 Django 5.1


프로젝트 생성, 초기 구조 설정 및 시작

$ django-admin startproject (프로젝트이름)

# ex) django-admin startproject mysite

 

성공적으로 실행됐다면 아래와 같은 폴더구조가 생성된다.

 

*폴더구조 설명*

더보기

manage.py

  • Django 프로젝트의 유틸리티 스크립트입니다.
  • 주요 기능: 이 파일을 사용하여 프로젝트를 관리하고 다양한 Django 명령어(runserver, migrate, createsuperuser 등)를 실행할 수 있습니다.
  • 예를 들어, 서버를 실행하려면 python manage.py runserver 명령을 실행합니다.

mysite/__init__.py

  • Python 패키지임을 나타내는 빈 파일입니다.
  • 이 파일이 포함되어 있으면 mysite 폴더를 Python에서 패키지로 인식할 수 있습니다.

mysite/settings.py

  • Django 프로젝트의 설정 파일입니다.
  • 주요 설정: 데이터베이스, 설치된 앱, 중간웨어(middleware), 템플릿 경로, 정적 파일 경로, 로깅 설정 등 프로젝트의 각종 설정들이 정의되어 있습니다.
  • DEBUG, ALLOWED_HOSTS, INSTALLED_APPS, DATABASES 등과 같은 설정이 이 파일에 포함되어 있습니다.

mysite/urls.py

  • Django 프로젝트의 URL 라우팅 설정 파일입니다.
  • 주요 역할: 프로젝트의 URL 구조를 정의하고 각 URL 요청을 어디로 보낼지 설정합니다.
  • 여기에서 urlpatterns 리스트를 정의하여 URL과 뷰(view)를 연결하고, 앱의 URL 설정을 이 파일에 포함시켜 전체 URL 구조를 관리합니다.

mysite/wsgi.py

  • WSGI(Web Server Gateway Interface) 설정 파일입니다.
  • Django를 웹 서버와 연결할 때 사용되는 파일입니다.
  • 이 파일은 Django 프로젝트가 배포될 때 웹 서버(예: Apache, Nginx)와 애플리케이션 사이의 인터페이스 역할을 합니다.

mysite/asgi.py

  • ASGI(Asynchronous Server Gateway Interface) 설정 파일입니다.
  • WSGI와 유사하지만 비동기 웹 서버와의 연결을 위한 파일입니다.
  • Django에서 실시간 기능을 추가하거나 WebSocket을 사용할 때 필요합니다.

 

개발 서버 가동

$ python3 manage.py runserver

 

http://127.0.0.1:8000/ 을 통해 접속해볼 수 있다.

적용되지 않은 데이터베이스 마이그레이션에 대한 경고는 아직 데이터베이스를 안 다루었으니 일단 무시하고 지나가도 된다.

접속 성공 화면

반응형