T.I.L June 13, 2023 (DB 개발/배포 환경에 따라 자동 설정)
2023. 6. 13. 22:42ㆍT.I.L (Today_I_Learned)
프로젝트 환경
- DRF(Django Rest Framework)
- sqlite3
- MYSQL
- .env
코드
DATABASES = {
'dev': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
},
'production': {
'NAME': os.environ.get('MYSQL_NAME'),
'ENGINE': 'django.db.backends.mysql',
'USER': os.environ.get('MYSQL_USER'),
'HOST': os.environ.get('MYSQL_HOST'),
'PASSWORD': os.environ.get('MYSQL_PASSWORD'),
'PORT': os.environ.get('MYSQL_PORT')
},
}
DATABASES['default'] = DATABASES['dev' if DEBUG else 'production']
알게된 것
이번 프로젝트를 진행하면서 팀원 분들에게 많은 것을 배우고 있습니다.
그 중 하나가 오늘 글의 주제인데요.
이전에 배포를 할 때 DB를 일일히 바꿔줘야 한데 비해 위의 코드로 진행을 하게 될 경우
개발/배포 두 환경에 맞춰서 자동으로 사용하는 DB가 바뀌기에 굉장히 개발자 스러운 발상이 아닌가 싶었습니다.
'T.I.L (Today_I_Learned)' 카테고리의 다른 글
T.I.L June 19, 2023 - Git soft reset (0) | 2023.06.19 |
---|---|
T.I.L June 14, 2023 (DRF 프로젝트에 logging 적용) (0) | 2023.06.14 |
T.I.L June 12, 2023 (test code) (0) | 2023.06.12 |
T.I.L June 7, 2023 (OAuth 2.0) (0) | 2023.06.07 |
T.I.L June 5, 2023 (A7_EcoCanvas - S.A) (0) | 2023.06.05 |