일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- paginator
- vscode
- Python
- 스파르타코딩클럽
- HTML
- predict
- Model
- JavaScript
- musicbot
- 웹프로그래밍A-Z기초
- 터미널
- git
- orm
- Django
- cs
- 장고
- 스파르타코딩클럽후기
- 머신러닝
- 내일배움캠프
- 기초문법
- MySQL
- Wil
- 파이널프로젝트
- 페이지네이션
- 선형회귀
- error
- 코딩교육
- 디스코드봇
- network
- 파이썬
- Today
- Total
lution88
[Django] 장고 기초. 본문
01. Django 프로젝트 생성하기
django-admin startproject 프로젝트명
02. Django 프로젝트 구조
lution_proj # 프로젝트 명 : 최상위 디렉토리 (Project Root)
ㄴmanage.py # Django 프로젝트를 생성하면 자동적으로 생성.
ㄴlution_proj # 프로젝트 명 : 프로젝트 앱 ProjectApp(Django Root)
ㄴ__init__.py
ㄴsettings.py
ㄴurls.py
ㄴwsgi.py
- lution_proj : 최상위 디렉토리(Project Root)
우리 프로젝트의 전체 파일이 들어 있는 디렉토리이다.
- manage.py
: Django앱을 만들거나, 데이터베이스 관련 기능을 수행하거나, 개발 서버를 실행하는 등 여러기능을 실행.
- __init__.py
: __init__.py 파일이 포함된 디렉토리를 Python 패키지로 인식하게끔 하기 위해서 사용.
- settings.py
: Django 프로젝트의 여러 가지 설정을 담고 있는 파일.
- urls.py
: Django 프로젝트로 들어온 url을 보고 앎자은 로직(View)으로 연결해주는 역할을 하는 파일이다.
03. 프로젝트(Project) vs 앱(App)
쇼핑몰을 만든다고 가정했을때)
회원가입 기능, 장바구니 기능, 결제기능 등을 각각의 독립적인 앱 단위로 개발할 수 있다.
그리고 이 앱들을 모두 합친게 하나의 프로젝트 이다.
1) 앱(App) 생성
명령어 : python manage.py startapp 생성할앱이름
ex) python manage.py startapp foods
- 필수 ! 앱을 생성하면 해줘야 하는 일 !
1) 장고에게 앱을 만들었다는 사실을 알려 주어야 한다.
- 프로젝트 앱 디렉토리에 있는 settings.py 안의 INSTALLED_APPS 항목에 생성한 앱을 추가해 준다.
- 생성하고 나면 기본 틀이 제공된다. 웹 프레임워크를 사용하는 장점!!
- admin.py
: foods앱을 Django 관리자와 연동하기 위해 필요한 설정 파일 - apps.py
: foods앱에 대한 설정들을 넣어 놓은 파일 - models.py
: foods앱에서 사용할 데이터 모델 정의, 데이터베이스 연동과 관련된 파일. - views.py
: 서버에 어떤 요청이 들어왔을 때 어떻게 처리해야될지에 대한 함수가 들어가는 파일.
migrations 디렉토리 : 데이터베이스랑 연관되어 변경사항 히스토리가 누적된다.
04. 서버 실행해 보기.
명령어 : python manage.py runserver
옆에 보이는 화면이 나오면
정상적으로 연결된 것인다.
정리하기
1. 프로젝트 생성하기 (restaurant)
Django-admin startproject restaurant
2. 앱 생성하기 (foods, menus)
python manage.py foods
python manage.py menus
3. 앱 등록하기
settings.py - INSTALLED_APPS
{
'foods',
'menus',
}
4. 서버 실행하기
python manage.py runserver
'개발일지 > # Django' 카테고리의 다른 글
[Django] 우아한 URL (0) | 2022.01.24 |
---|---|
[TIL] 220124 Django의 템플릿 언어 (0) | 2022.01.24 |
[Django] MVT 구조 (0) | 2022.01.23 |
[Django] URL 작성하기 (0) | 2022.01.23 |
[TIL] 220122 django앱의 철학 Reusable App (0) | 2022.01.22 |