Friday_July_3
.
.
.
์ฐ์ ๋ง ๊ทธ๋๋ก ์ฅ๊ณ ์์ ์ฒซ ์ฑ์ ๋ง๋ค๊ธฐ ์ํ ๊ธ์ด๋ค.
์ค๋ฌธ์กฐ์ฌ๋ฅผ ํ๋ Polls ๋ผ๋ ์ฑ์ ๋ง๋ค ๊ฒ์ด๋ค.
(์ฐธ๊ณ ๋ก Miniconda๋ผ๋ ๊ฐ์ํ๊ฒฝ์์ Django๋ฅผ ์ค์นํ์ฌ ์งํํ์๋ค.)
์์ํ๊ธฐ์ ์์, App์ด๋ ์ฝ๊ฒ ๋งํด '๊ธฐ๋ฅ'์ด๋ค. ๋๋ ์ง๊ธ Django๋ผ๋ ํ๋ ์์ํฌ๋ฅผ ์ด์ฉํด
์ค๋ฌธ์กฐ์ฌ๋ฅผ ํ๋ Polls๋ผ๋ ๊ธฐ๋ฅ์ ๋ง๋๋ ค๊ณ ํ๋ ๊ฒ์ด๋ค.
์ผ๋จ ์์ํ๊ธฐ์ ์์ ํ๋์ App๋ง ๋ง๋๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ๋ด์ ํ๋ก์ ํธ(๋๋ ํ ๋ฆฌ)๋ฅผ ํ๋ ๋ง๋ค ๊ฒ์ด๋ค.
mysite๋ผ๋ ์ด๋ฆ์ผ๋ก ๋ง๋ค๋๋ก ํ๊ฒ ๋ค.
django-admin startproject <์ํ๋ ํ๋ก์ ํธ ์ด๋ฆ>
๋ผ๊ณ ์ ๋ ฅํด์ฃผ๋ฉด ๋๋ค.
์ฌ๊ธฐ์ ์ฃผ์ ํ ๊ฒ์, ๊ผญ Django๊ฐ ์ค์น๋ ๊ฐ์ํ๊ฒฝ์์ ์งํ์ ํด์ผ๋๋ค๋ ๊ฒ์ด๋ค.
(Django๊ฐ ์ค์น๋ ๋ด ๊ฐ์ํ๊ฒฝ์ project์ด๋ค.)
๋ช ๋ น์ด๋ฅผ ์ ์ ๋ ฅํ๋ค๋ฉด ๋ด๊ฐ ์ง์ ์ด๋ฆ์ผ๋ก ๋๋ ํ ๋ฆฌ๊ฐ ํ๋ ์๊ฒผ์๊ฑฐ๋ค.
ํ์ง๋ง ๊ทธ ๋๋ ํ ๋ฆฌ๋ ๊ทธ์ ๋ด๊ฐ ๊ธฐ๋ฅ๋ค์ ๋ชจ์ ํ๋์ ํ๋ก์ ํธ(๋๋ ํ ๋ฆฌ) ํ์ผ์ด๊ณ ๋ชจ๋ ์งํ์ ๊ทธ ์์์ ํด์ค์ผ ํ๋ค.
๋ง์ฝ ์ ๋๋ก ๋ง๋ค์๊ณ ์์ผ๋ก ๋ค์ด๊ฐ๋ค๋ฉด,
ํ์ฌ ๊ทธ ํ๋ก์ ํธ(๋๋ ํ ๋ฆฌ)์์๋ ๋ค์๊ณผ ๊ฐ์ด
manage.py ํ์ผ๊ณผ mysite๋ผ๋ ๋๋ ํ ๋ฆฌ๊ฐ ์์ ๊ฒ์ด๋ค.
- mysite๋ผ๋ ํ๋ก์ ํธ ๋ง๋ค๊ธฐ
- mysite๋ผ๋ ํ๋ก์ ํธ๊ฐ ์ ๋ง๋ค์ด์ก์
- ๊ทธ ํ๋ก์ ํธ(๋๋ ํ ๋ฆฌ)๋ก ์ด๋์ ํจ
- ๊ทธ ์์๋ manage.py๋ผ๋ ํ์ผ๊ณผ mysite๋ผ๋ ๋๋ ํ ๋ฆฌ๊ฐ ํ๋ ๋ ์์
- ํ์ฌ ์์น ์๋์ ๋ด์ฉ๋ค์ ๋ณด๋ ๋ค์๊ณผ ๊ฐ๋ค.
mysite๋ผ๋ ๋๋ ํ ๋ฆฌ๊ฐ 2๊ฐ๋ผ๊ณ ํ๊ฐ๋ฆฌ๋ฉด ์๋๋ค.
ํญ์ manage.py << ์ด ํ์ผ์ด ์๋ ๊ณณ์ด ์ ์ผ ๊ผญ๋๊ธฐ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
๋ถํ์คํ ์ ๋ณด๋ฅผ ์ฃผ๋ฉด ์๋๋, ๊ฐ ํ์ผ๋ค์ ์์ธํ ์ค๋ช
์ ์ข ๋ ๊ณต๋ถ๋ฅผ ํ๊ณ ์ ์ด์ผ๊ฒ ๋ค.
์์ง ๋๋ ์ฒ์์ด๋ผ ๋ง์ด ๋ถ์กฑํ๋ค. (์ด์ฌํ ํ ๊ฒ์ ใ
)
์ผ๋จ ์ด๋ ๊ฒ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ธฐ๋ง ํด๋ ์๋ฒ๋ฅผ ํ์ฑํ๊ฐ ๊ฐ๋ฅํ๋ค.
์๊น ์ ์ ์ค์ํ๋คํ manage.py ํ์ผ์ด ์กด์ฌํ๋ ๊ณณ(์ ๊ทธ๋ฆผ์์ ์ด๋์ ์ํ๋ค๋ฉด ๊ทธ ์์น)์์
๋ค์๊ณผ ๊ฐ์ ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํด์ฃผ๋ฉด ๋๋ค.
python manage.py runserver
์ด๋ ๊ฒ ์ ๋ ฅํด์ฃผ๋ฉด ์๋ฒ๊ฐ ํ์ฑํ๊ฐ ๋๋ค.
์ด๋ ๊ฒ ์๋ฒ๋ฅผ ์คํํ๊ฒ ๋๋ฉด ์คํํ ์๋ฒ์ ์ฃผ์๊ฐ ์์ ๊ฐ์ด ๋์ค๊ฒ ๋๋ค.
(๋นจ๊ฐ์ ๊ธ์จ๋ก ๋์ค๋ ๋ฌธ์ฅ๋ค์ ์์ง์ ์ ๊ฒฝ์ฐ์ง ์์๋ ๋๋ค. ๋์ค์ ์๊ฒ ๋ ๊ฒ์ด๋ค.)
์์ ๋นจ๊ฐ ์ค์ ์น ์ฃผ์๋ก ์ ์์ ํ๊ฒ๋๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ก์ผ์ด ์ถ๋ฐํ๋ ๊ทธ๋ฆผ์ ํ์ด์ง๊ฐ ์ด๋ฆฌ๊ฒ ๋๋ค.
์ด๊ฒ์ด ์ฌ๋ฌ๋ถ์ ์ฒซ ์๋ฒ์ธ ๊ฒ์ด๋ค.
์ด์ ์น์ฌ์ดํธ์ ์ค๋ฌธ์กฐ์ฌ๋ฅผ ํ๋ polls ๋ผ๋ ์ฑ(๊ธฐ๋ฅ)์ ๋ฃ์ผ๋ ค๊ณ ํ๋ค.
๋ค์ manage.py๊ฐ ์๋ ๊ณณ์ผ๋ก ๊ฐ์ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์ณ์ฃผ๋ฉด ๋๋ค.
(manage.py๋ฅผ ๊ณ์ ๊ฐ์กฐํ๋ ์ด์ ๋ ๊ฐ๋์ manage.py๊ฐ ์๋ ์์น์์ ์๋ฒ๋ฅผ ์ด๊ฑฐ๋, ํ๋ก์ ํธ๋ ์ฑ์ ๋ง๋ค๋ฉด ์คํ์ด ๋์ง ์๊ฑฐ๋ ๋ง๋ค์ด์ง์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
python manage.py startapp polls
์ด๋ ๊ฒ ํ๋ฉด ์ ๋ง๋ค์ด์ง ๊ฒ์ด๋ค.
ํ์ง๋ง ๋ง๋ค์๋ค๊ณ ๋์ด ์๋๋ผ ํ๋ก์ ํธ์์ ๋ด๊ฐ polls ๋ผ๋ ์ฑ์ ๋ง๋ค์๋ค๋ ๊ฒ์ ์๋ ค์ค์ผ ํ๋ค.
์ด๋ป๊ฒ ์๋ ค์ฃผ๋๋??
mysite๋ผ๋ ๋๋ ํ ๋ฆฌ ์๋์ ์๋ settings.py์ ๊ฒฝ๋ก๋ฅผ ๋ฑ๋กํด์ค์ผ ํ๋ค.
์ผ๋จ ์ด๋์ ํ๊ณ vi ํธ์ง๊ธฐ๋ก settings.py ํ์ผ์ ์ฐํ
(์ฐธ๊ณ ๋ก settings.py ํ์ผ์, ๋ง ๊ทธ๋๋ก ํ๊ฒฝ์ค์ ์ ํด์ฃผ๋ ํ์ผ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์ฌ์ค ์ ๋ ์ ๋ชฐ๋ผ์..ใ
)
INSTALLED_APPS ๋ผ๋ ๊ณณ์ ๋ค์๊ณผ ๊ฐ์ด ๊ฒฝ๋ก๋ฅผ ์ถ๊ฐํด ์ฃผ์ด์ผ ํ๋ค.
'polls.apps.PollsConfig'
(๊ฒฝ๋ก์ด๋ ์คํธ๋ง์ผ๋ก ์ฃผ๋ ๊ฒ์ ์์ผ๋ฉด ์๋๋ค.)
apps ํ์์ ์๋ config ๋ชจ๋์ ๋ค์ด๋ฐ(naming)์ ์ฑ์ด๋ฆ+'Config' ์ด๋ฉฐ, ์ฑ์ ์ ์ผ ์ ๊ธ์๋ง ๋๋ฌธ์๋ก ์์ฑ๋๋ค.
์ฅโโโ
๋ค์์ ๊ฒฝ๋ก๋ก(apps.py) ๊ฐ๋ณด์.
์ฌ์ง๊ณผ ๊ฐ์ด ๋ด๊ฐ ์ง์ '์ฑ์ด๋ฆ+Config' ๋ผ๋ ํด๋์ค๊ฐ ์์ฑ์ด ๋์ด ์๋ค.
๋ฌผ๋ก ๋๋ ์์ง ๋ญ๊ฐ ๋ญํ๋ ๋์ธ์ง ์ ๋ชจ๋ฅด์ง๋ง, mysite>settings.py ์์ ๊ฒฝ๋ก๋ฅผ ์ค ์น๊ตฌ๋
์ด ์น๊ตฌ์ ๊ด๋ จ์ด ์๋ค๋ ๊ทธ๋ฐ ๋๋์ ์ธ ๋๋๋ง ๋ค ๋ฟ.
์ฑ ์ด๋ฆ์ด polls ๊ฐ ์๋ this_is_polls ์ ๊ฐ์ด ์ง์ผ๋ฉด ์ด๋ป๊ฒ ๋ ๊น?
๊ทธ๋ฌ๋ฉด 'ThisIsPollsConfig'๊ฐ ๋๋ค.
(์ด๊ฑด ๊ฐ์ ์ค์ต์ผ๋ก ์๋ํด๋ณด๊ณ ํ์ธํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.)
์๋ฌดํผ ์ด์ Django๊ฐ polls ์ฑ์ด ๋ฑ๋ก๋์๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์๋ค.