[Django] 프로젝트 및 앱 구조
django는 여러 app으로 구성되어있음.
그중 현재 생성된 mstaurant/mstaurant app은 여러 설정 파일, 환경이 들어 있기 때문에 제일 중요함!
1. 프로젝트 구조
├── mstaurant/ #project root 최상위 디렉토리
├─ manage.py #프로젝트 관리를 위한 명령어 지원 앱생성, 서버 실행 등
├─ db.sqlite3
└─ mstaurant/ #project app 가장 중심이 되는 app
├─ __init__.py #python 패키지로 인식시키기 위해 필요함
├─ asgi.py #비동기 처리를 위한 서버
├─ settings.py #시간대, 경로, db설정 등 전반적인 설정
├─ urls.py #url을 보고 알맞은 페이지로 연결함
└─ wsgi.py #웹서버와 장고가 소통할떄 필요한 프로토콜
2. 앱 구조
프로젝트 안에 생성되는 '앱'
앱 생성 명령어
#루트 디렉토리에서 foods 앱 생성
python manage.py startapp foods
<앱 구조>
├── mstaurant/
├─ manage.py
├─ db.sqlite3
├─ mstaurant/
│ ├─ __init__.py
│ ├─ asgi.py
│ ├─ settings.py
│ ├─ urls.py
│ └─ wsgi.py
└─ foods/
├─ migrations/ #데이터베이스 변경사항 히스토리 누적
├─ __init__.py #
├─ admin.py #앱을 장고 관리자와 연동하기 위해 필요한 설정 파일
├─ apps.py #앱에 대한 설정
├─ models.py #데이터 모델 정의
├─ tests.py #프로젝트 테스트 코드 작성
└─ views.py #메인 로직 처리
3. 앱 생성 후 setting.py 수정
앱이 생성 되었다는 것을 알려 주는 것!
#settings.py
...
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'foods' #생성한 앱 추가
]
...
뭔가 플라스크랑 유사하다 신기하다...ㅋㅋㅋ
Author And Source
이 문제에 관하여([Django] 프로젝트 및 앱 구조), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@martinalee94/Django-프로젝트-구조저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)