๐ ๊ธฐ๋ณธ ์ค์ ํ์ผ ์ข ๋ฅ
- settings.py -> ์ฅ๊ณ ๊ธฐ๋ณธ ์ค์ ์ด ๋ค์ด๊ฐ ์๋ค.
- urls.py -> ์ฅ๊ณ api ์ ๋ณด๋ค์ด ๋ค์ด๊ฐ๋ ํ์ผ์ด๋ค.
- ์๋ ์ฝ๋๋ html ํ์ผ์ ๋ณด์ฌ์ฃผ๊ฒ ํ๊ธฐ ์ํ ์ฝ๋
from django.shortcuts import render
๐ ํ๋ผ์คํฌ์์ ์์ ๊ฐ์ ์๋ฌ๋ฅผ ๋ง๋๋ฉด ๊ฒฝ๋ก๋ฅผ ์ ๋ชป ์จ์คฌ์๋ ๋ง๋ฌ๋ ์๋ฌ๋ผ ๋ ์ฝ๋๊ฐ ํ๋ฆฐ๊ณณ์ด ์๋์ง ํ์ธ์ 10๋ฒ์ ๋ํ์ง๋ง ๋ฌธ์ ๊ฐ ์์๋ค.
์ฐพ์๋ณด๋ settings ํ์ผ์์ ์ค์ ์ ๊ฑด๋๋ ค ์ฃผ์์ด์ผ ํ๋ค ใ ใ
๊ฐ์์ ๊ทธ๋ฐ๋ง์ ์์ด์ ๊ทธ๋ฅ templates๋ฅผ ์์์ ์ฐพ์๊ฐ๋ ์ค ์์๋๋ฐ...
pycharm ์์ ๋ง๋ค์ง ์๊ณ vscode์์ ๋ช ๋ น์ด๋ก Django ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด์ ๊ทธ๋ฐ๊ฐ๋ค... ์๊ฐ์ค์ด๋ค.
๐ settings.py ํ์ผ์์
import os TEMPLATE_DIR = os.path.join(BASE_DIR, 'templates') TEMPLATES = [ { "BACKEND": "django.template.backends.django.DjangoTemplates", "DIRS": [TEMPLATE_DIR], "APP_DIRS": True, "OPTIONS": { "context_processors": [ "django.template.context_processors.debug", "django.template.context_processors.request", "django.contrib.auth.context_processors.auth", "django.contrib.messages.context_processors.messages", ], }, }, ]
templates ํด๋๊ฐ ์๋์ผ๋ก ์์ฑ๋์ง ์์ ๋๋ ์๋์ผ๋ก ๋ง๋ค์ด์คฌ๋๋ฐ ์๋์ผ๋ก ๋ง๋ค๋ฉด์ ์ ์ค์ ๋ค๋ ๋ง์ ธ์ค์ผ ํ๋ ๊ฒ ๊ฐ๋ค ใ
๐ Django์์ app ์ ํ์ด์ฌ ํจํค์ง๋ก MVT
๋ชจ๋ธ์ ๋ ์์ ์ผ๋ก ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ํน์ ํ ๊ธฐ๋ฅ์ ์ํํ๋ ๊ฒ๋ค์ด๋ค.django-admin startapp user djago-admin startapp tweet
๋ง์ฝ ์ ๋ช ๋ น์ด๊ฐ ๋จน์ง ์๋๋ค๋ฉด pip install pipenv ๋ก ๊ฐ์ํ๊ฒฝ์ ๋ฐ์์ฃผ์ด์ผ๋๋ค.
app ๋ค์ ์ถ๊ฐํ์ผ๋ฉด settings.py ์์ app ๋ค์ ์ถ๊ฐํด ์ฃผ์ด์ผ ํจINSTALLED_APPS = [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.contrib.sessions", "django.contrib.messages", "django.contrib.staticfiles", 'tweet', 'user', ]
์ฅ๊ณ ๋ ์ฐธ ์ด์ํ๊ฒ ๋์๋ , (์ฝค๋ง)๋ฅผ ๋ถ์ฌ์ฃผ์ด์ผ ํ๋ค๋๊ฒ์ด ์ ๊ธฐํ๋ค.
๐ Object Relational Mapping ์ ์ค์๋ง๋ก ๊ฐ๋จํ๊ฒ
๊ฐ์ฒด ์งํฅ ์ธ์ด์์๋ ํด๋์ค๋ฅผ ์ฌ์ฉํ๊ณ , ๊ด๊ณํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค๋ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ค.
๋ฐ๋ผ์ ํด๋น ๋ ๋ชจ๋ธ์ ๋ถ์ผ์น๋ฅผ ORM์ด ํด๊ฒฐํด ์ฃผ๋ ๊ฒ์ด๋ค.
SQL ์ ๋ฐฐ์ธ๋ ์ฟผ๋ฆฌ๋ฌธ์ ์ฌ์ฉํ์ฌ DB ์ง์๋ฅผ ํ์์๋๋ฐ ORM ์ ์ฌ์ฉํ๋ค๋ฉด ์ฟผ๋ฆฌ๋ฌธ์ด ์๋ ํด๋น ์ธ์ด๋ก (ex java, python) DB์ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ ์ ์๋ค.
๐ Django์ DB ์์ฑ์ ์๋ ค์ค
python manage.py makemigrations
๐ Django์ DB ์ ์ฉ์ ์์ฒญ
python manage.py migrate