# 장고 프로젝트 생성하기
$ django-admin startproject [project-name]
# 프로젝트 폴더로 위치 변경한 후 프로젝트를 서버에서 구동
$ cd [project-name]
$ python manage.py runserver
# 앱 생성하기
$ python manage.py startapp [app-name]
모델 생성
적용하고 싶은 페이지의 폴더에 가서 model.py
파일에 모델을 만든다.
model의 다양한 Field는 공식 홈페이지에서 확인하자. 여기서 Field는 DB의 열을 뜻한다.
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
Migration 생성
프로젝트 폴더 안에있는 settings.py
파일을 수정한다.
INSTALLED_APPS = [
...,
'[app-name].apps.[Config-name]',
]
그 후 cmd로 이동하여 table 생성을 위한 migration을 진행한다.
# cmd로 가서 migration 파일을 생성한다.
$ python manage.py makemigrations [app-name]
# migration으로 실행될 Sql 잘 만들어졌는지 확인
$ python manage.py sqlmigrate [app-name] [migration 코드]
# migration 실행 - 실행 후 변경사항없이 또 migration하려고 하면 바뀔 것이 없다고 뜸
$ python manage.py migrate
table 확인
sqlite3가 기본 제공된다. 이것을 사용해서 만들어졌는지 확인한다.
# db.sqlite3 파일을 기준으로 생성된 sqlite3 접속
$ sqlite3 db.sqlite3
```python
# Django Shell 실행
$ python manage.py shell
```
기존에 배웠던 react와는 전혀 다른 관점으로 웹을 바라봐야한다는 것이 놀라웠다. 프론트엔드를 배우면서 생겼던 의문들을 하나씩 풀어가면서 수업을 듣게 되어 굉장히 재미있게 듣고 있다. 이 2가지를 적절하게 잘 섞어서 프로젝트를 하고 싶다.