๐Ÿฑ Project/Review Web

Django - #1. ํ™˜๊ฒฝ ๋งŒ๋“ค๊ธฐ

์ง€ ์› 2022. 9. 17. 22:50

๊ทธ๋™์•ˆ Django์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•œ ๊ฒƒ๋“ค์„ ์‚ฌ์šฉํ•ด์„œ ์ฑ…์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๊ณ , ๋Œ“๊ธ€์„ ๋‹ฌ ์ˆ˜ ์žˆ๋Š” ์›น ํŽ˜์ด์ง€๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ œ์ž‘ํ•ด ๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

 

์šฐ์„ , ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์šฐ์„  ๊ฐ€์ƒํ™˜๊ฒฝ์„ ๋งŒ๋“ค์–ด ์ค€๋‹ค.

 

๊ฐ€์ƒํ™˜๊ฒฝ, ํŒจํ‚ค์ง€ ์„ค์น˜

 

๊ฐ€์ƒํ™˜๊ฒฝ ์„ค์น˜

python -m venv venv

 

๊ฐ€์ƒํ™˜๊ฒฝ ์ผœ๊ธฐ

source venv/Scipts/activate

 

๊ฐ€์ƒํ™˜๊ฒฝ ์ข…๋ฃŒ

 

deactivate

 

๊ฐ€์ƒํ™˜๊ฒฝ ์ค€๋น„๊ฐ€ ๋๋‹ค๋ฉด requirements.txt ๋ฅผ ์‚ฌ์šฉํ•ด ์žฅ๊ณ ์™€ ํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•œ๋‹ค.

pip install -r requirements.txt

 

ํŒจํ‚ค์ง€ ๋ชฉ๋ก์„ ์ƒ์„ฑํ•˜๋Š” ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

pip freeze > requirements.txt

 

์žฅ๊ณ  ํ”„๋กœ์ ํŠธ, ์•ฑ ์ƒ์„ฑ

์žฅ๊ณ  ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

django-admin startproject <project name> .

๋’ค์— .์„ ์•ˆ๋ถ™์ด๋ฉด ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ ํด๋”๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๊ทธ ์•ˆ์— ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์ด ์ƒ์„ฑ๋œ๋‹ค.

.์„ ๋ถ™์ด๋ฉด ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•œ ๊ฒฝ๋กœ์— ๋ฐ”๋กœ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.

project1์˜ project ์ƒ์„ฑ

์•ฑ ์ƒ์„ฑ

python manage.py startapp <app name>

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ด๋ฆ„์€ ๋ณต์ˆ˜ํ˜•์œผ๋กœ ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.

articles ์•ฑ ์ƒ์„ฑ

 

์•ฑ์„ ์ƒ์„ฑํ–ˆ๋‹ค๋ฉด 

project1/settings.py ์—์„œ ์•ฑ์„ ๋“ฑ๋กํ•˜๊ณ , urls์—์„œ ์•ฑ์˜ urls๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

settings.py ์˜ INSTALLED_APPS์— ์ƒ์„ฑํ•œ ์•ฑ ์ด๋ฆ„์„ ์ถ”๊ฐ€
urls.py ์— ์•ฑ urls์ถ”๊ฐ€

 

articles ํด๋”์— urls.py ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์•ฑ ์ด๋ฆ„๊ณผ urlpatterns๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

์•ฑ urls์— app_name, urlpatterns ์ถ”๊ฐ€

๊ธฐ๋ณธ ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ ๋ฐ ๋“ฑ๋ก

html์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํ…œํ”Œ๋ฆฟ์„ ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•ด ์ƒ์œ„ ํด๋”์— templatesํด๋”๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  project1/settings.py ์— ๊ธฐ๋ณธ htmlํŒŒ์ผ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋“ฑ๋กํ•œ๋‹ค.