Backend/๐ต Django
[Django] ์ฅ๊ณ ์ ์ ํ์ผ ๊ด๋ฆฌํ๊ธฐ - Static, Media
์ ์ ํ์ผ ์ด๋? ์ ์ ํ์ผ์ HTML์ ์ ์ธํ๊ณ ์น ํ์ด์ง๋ฅผ ๋ ๋๋ง ํ ๋ ํ์ํ ์ถ๊ฐ์ ์ธ ํ์ผ์ ์๋ฏธํ๋ค. ์๋ฒ์ ๋ฐ์ดํฐ๋ค์ด ์ด๋์ ๋ ๊ฐ๊ณต๋ ํ ๋ณด์ฌ์ง๋ ๋์ ํ์ผ๊ณผ ๋ฌ๋ฆฌ, ์๋ฒ์ ๋ฏธ๋ฆฌ ์ ์ฅ๋์ด ์์ด์ผํ๋ฉฐ, ์๋ฒ์ ์ ์ฅ๋ ๊ทธ๋๋ก๋ฅผ ์๋น์คํ๋ค. ์ฅ๊ณ ์์ ์ ์ ํ์ผ์ ์๋์ ๋๊ฐ์ง ํ์ผ๋ก ๋ถ๋ฅ๋ ์ ์๋ค. Static ํ์ผ : ์ด๋ฏธ์ง, Javascript, CSS์ฒ๋ผ ๊ฐ๋ฐ์๊ฐ ์๋ฒ๋ฅผ ๊ฐ๋ฐํ ๋ ๋ฏธ๋ฆฌ ๋ฃ์ด ์ค๋นํด ๋์ ํ์ผ๋ก, ์๋น์ค ์ค์ ์ถ๊ฐ๋๊ฑฐ๋ ์์ ๋์ง ์๊ณ ๊ณ ์ ๋์ด ์์ Media ํ์ผ : ์ฌ์ฉ์๊ฐ ์ ๋ก๋ ํ ์ ์๋ ํ์ผ๋ก, ํ์ผ ์์ฒด๋ ๊ณ ์ ๋์ด ์์ง๋ง ์ธ์ ์ด๋ค ํ์ผ์ด ์ ๊ณต๋ ์ง๋ ์์ธกํ ์ ์์ Static ํ์ผ ๊ด๋ฆฌ 1. app ํด๋ ์๋ static ํด๋ ์์ฑ ํ ์ด๋ฏธ์ง/Javascript/CSS..
[Django] ์ฅ๊ณ CRUD ๊ตฌํ - ๊ฒ์ํ ๊ธฐ๋ฅ
CRUD ๋? Create : DB์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํจ Read : DB์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ด Update : DB์ ํน์ ๋ฐ์ดํฐ๋ฅผ ์์ ํจ Delete : DB์ ํน์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํจ Create - ๋ฐ์ดํฐ ์์ฑ - GET : ๋ฐ์ดํฐ๋ฅผ ์ป๊ธฐ ์ํ ์์ฒญ - ๋ฐ์ดํฐ๊ฐ URL์ ๋ํ๋จ # ex) ๊ฒ์ ๊ธฐ๋ฅ search def search(request): keyword = request.GET['search_value'] POST : ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๊ธฐ ์ํ ์์ฒญ ๋ฐ์ดํฐ๊ฐ URL์ ๋ํ๋์ง ์์ csrf ๊ณต๊ฒฉ ๋ฐฉ์ง ํ์ # views.py def create(request): new_blog = Blog() # ๋ฐ์ดํฐ ์ ์ฅ์ ์ํ ๊ฐ์ฒด ์์ฑ new_blog.title = request.POST['title'] ne..
[Django] ์ฅ๊ณ models ๋ฐ DB ์ค๊ณ - Migration, Admin
Migration์ด๋? Django์์ Migration์ด๋, ์ฝ๊ฒ ๋งํด python์ผ๋ก ์๋ํ๋ ์น ํ๋ ์์ํฌ Django์์ python์ผ๋ก ์ง์ฌ์ง code๋ฅผ DB๊ฐ ์์๋ค์ ์ ์๊ฒ ์ค๋ช ํด์ฃผ๋ ์์ ์ด๋ค. model์ ๋ณ๊ฒฝ๋ ๋ด์ฉ์ DB ์คํค๋ง์ ์ ์ฉ์์ผ ์ค๋ค. 1. Models ์ ์ํ๊ธฐ ์ด๋ค ์ข ๋ฅ์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ณ ์ถ์์ง class๋ก ์ ์ํ๋ค. ๋ธ๋ก๊ทธ ๋ฐ์ดํฐ๋ก ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ๋ค. from django.db import models # Create your models here. class Blog(models.Model): # title ๋ณ์๋ ์ต๋ ๊ธธ์ด 200์ธ ์งง์ ๋ฌธ์์ด ํ์์ผ๋ก ์ ์ title = models.CharField(max_length=200) # writer ๋ณ์๋ 100..
[Django] ์ฅ๊ณ ์ค์ต/๊ฐ๋ฐ ํ๊ฒฝ ์ค๋นํ๊ธฐ - ํ๋ก์ ํธ ๋ฐ ์ฑ ์์ฑ
1. ๊ฐ์ํ๊ฒฝ ์์ฑ - ๊ฐ์ํ๊ฒฝ์ ํ๋ก์ ํธ๋ฅผ ์ฌ๋ฌ ๊ฐ ์งํํ๋ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ ์ค์ $ python -m venv ๊ฐ์ํ๊ฒฝ๋ช (window) $ python3 -m venv ๊ฐ์ํ๊ฒฝ๋ช (mac) 2. ๊ฐ์ํ๊ฒฝ ์คํ(ํ์ฑํ) $ source ๊ฐ์ํ๊ฒฝ๋ช /Scripts/activate (window) $ source ๊ฐ์ํ๊ฒฝ๋ช /bin/activate (mac) 3. Django ํจํค์ง ์ค์น $ pip install django 4. ํ๋ก์ ํธ ํ์ผ ์์ฑ $ django-admin startproject ํ๋ก์ ํธ๋ช 5. App ์์ฑ - ์ฑ์ Django ํ๋ก์ ํธ๋ฅผ ์ด๋ฃจ๋ ์์ ๋จ์ - ๋จผ์ ํ๋ก์ ํธ ํด๋๋ก ์ด๋ ํ ์ฑ ์์ฑ $ cd ํ๋ก์ ํธ๋ช $ python manage.py startapp ์ฑ์ด๋ฆ 6. sett..