์ค๋์ django์์ .envํ์ผ๋ก ํ๊ฒฝ๋ณ์๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณธ๋ค.
์ฅ๊ณ ์์๋ django-environ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํตํด ์์ฝ๊ฒ ํ๊ฒฝ๋ณ์์ ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค.
envํ์ผ์ ํ๊ฒฝ๋ณ์๋ค์ ์ ์ฅํด๋๊ณ ๋ก๋ํ์ฌ ์ฌ์ฉํ๋๊ฒ์ด๋ค
.env ์์ฑ
ํ๋ก์ ํธ์ ๋ฃจํธ์ .env ํ์ผ์ ๋จผ์ ์์ฑํด์ค๋ค.

์์ฑ ํ์๋ ๊ผญ gitignoreํ์ผ์ .env๋ฅผ ์ถ๊ฐํ์ฌ ๊นํ๋ธ์ ์ฌ๋ผ๊ฐ์ง ์๋๋ก ํ๋ค.

install django-environ
๋ค์์ ํฐ๋ฏธ๋์ ์ ๋ ฅํ์ฌ django-environ์ ์ค์นํ๋ค.
pip install django-environ
.env ์์ฑ
ํ๊ฒฝ๋ณ์๋ก ์ง์ ํด์ผ ํ๋๊ฐ๋ค์ env์ ์ ์ํ๋ค.
๋ค์๊ณผ ๊ฐ์ด ์์ฑํด์ผ ํ๋ค.
SECRET_KEY='django-insecure-...'
DEBUG=True
# MySQL DB
DB_NAME='localdb'
...
์ด๋ ์ฃผ์ํ ์ ์ ํค์ ๊ฐ ์ฌ์ด์ ๋์ด์ฐ๊ธฐ๋ฅผ ํฌํจํด์๋ ์๋๋ค๋ ๊ฒ์ด๋ค.
# ํ๋ฆฐ ์์
DB_NAME = 'localdb'
# ์ฌ๋ฐ๋ฅธ ์์
DB_NAME='localdb'
settings.py ์์ฑ
settings.py์ ๋ค์์ ์ถ๊ฐํ๋ค.
import environ
...
env = environ.Env(DEBUG=(bool, False))
environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
...
# ์ด์ ๋ ํ๊ฒฝ๋ณ์๊ฐ ๋ค์ด๊ฐ ์๋ฆฌ๋ฅผ ๋ค์์ฒ๋ผ ๋ฐ๊พธ์ด ์์ฑํด์ค๋ค.
SECRET_KEY = env('SECRET_KEY')
DEBUG = env('DEBUG')
...
migrate
settings.py์์ฑ์ ๋ง์ณค๋ค๋ฉด migrate๋ฅผ ์งํํ๋ค.
python manage.py migrate
'๐ฅProject > Team22' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Team22] DRF API ๋ฌธ์ - drf yasg (0) | 2024.03.11 |
---|---|
[Team 22] DRF - Mixins (0) | 2024.02.08 |
[Team 22] DRF - Generic API View (0) | 2024.02.08 |
[Team 22] DRF Authentication - dj-rest-auth (0) | 2024.02.08 |
[Team 22] Django REST framework (3) - Viewset (0) | 2024.02.03 |