[Django]장고 프로젝트 및 앱 생성

Hyeo_Ni__·2023년 11월 28일
0

Django

목록 보기
3/12
post-thumbnail

📝 프로젝트란?

하나의 웹 사이트로 프로젝트 안에는 여러 개의 앱이 존재한다.


📚 프로젝트 생성하기

✍ 코드

django-admin startproject '프로젝트명' .

프로젝트명 다음에 오는 점 '.'은 현재 디렉터리를 의미한다.
즉, 현재 디렉터리를 기준으로 프로젝트를 생성한다.

기본적으로 project파일과 manage.py가 생긴 것을 확인해 볼 수 있다.


📚 프로젝트 구조

위 이미지에 있는 프로젝트 구조를 한 눈에 보기 쉽게 나타내어 봤다.

Django/
├─ manage.py
└─ project/
    ├─ __init__.py
    ├─ asgi.py
    ├─ settings.py
    ├─ urls.py
    └─ wsgi.py
Django 사용자가 생성한 폴더
project 사용자가 생성한 django 프로젝트 폴더
manage.py 웹 서버 실행 및 프로젝트 관리 도구로, 다양한 명령어를 실행 가능
명령어 : $ python manage.py (command) [options]
__init__.py 현재 폴더가 Python 패키지로 인식하기 위한 파일
asgi.py Asynchronous Server Gateway Interface
Django 애플리케이션이 비동기식 웹서버와 연결/소통하는 것을 도움
settings.py Django 프로젝트 설정을 관리
urls.py Django 프로젝트의 URL 패턴을 정의 (경로 및 요청별 기능 등)
wsgi.py Web Server Gateway Interface
Django 애플리케이션이 웹서버와 연결 및 소통하는 것을 도움


📚 앱 생성하기

✍ 코드

django-admin startapp '앱 명' .

프로젝트 단독으로는 아무런 것도 만들 수 없다.
프로젝트에 기능을 추가하기 위해 앱을 생성해야한다.

기본적으로 api파일이 생긴 것을 확인해 볼 수 있다.


📚 프로젝트 구조

위 이미지에 있는 앱 구조를 한 눈에 보기 쉽게 나타내어 봤다.

Django/
├─ project/
├─ db.sqlite3
├─ manage.py
└─ api/
    ├─ __init__.py
    ├─ admin.py
    ├─ apps.py
    ├─ models.py
    ├─ tests.py
    ├─ views.py
    └─ migrations/
__init__.py 현재 폴더가 Python 패키지로 인식하기 위한 파일
admin.py 관리자용 페이지 설정
apps.py 앱의 정보
models.py 애플리케이션에서 사용하는 Model을 정의 (Data Base)
tests.py 프로젝트의 테스트 코드를 작성하는 곳
views.py 앱의 기능, 로직을 작성


📚 로컬 서버 구동

기본적인 프로젝트와 앱을 생성하였으면 아래 코드를 통해 서버를 실행할 수 있다.

✍ 코드

python manage.py runserver

profile
개발자로 성장 중 입니다.

0개의 댓글