안녕세계
[장고 AtoZ] settings.py 파일 분할 본문
[장고 AtoZ] settings.py 파일 분할
Junhong Kim 2018. 2. 5. 16:47안녕하세요~
이번 포스팅에서는 settings.py를 환경에 따라서 분리해보는 작업을 해보겠습니다.
Application을 배포할 때 장비에 따라 필요한 라이브러리나 데이터베이스 정보 등 설정 정보가 다를 수 있습니다.
이때 django 프로젝트를 생성할 때 settings.py가 만들어지는데 설정 정보를 각각 다르게 지정할 수 있습니다.
[ 기존 프로젝트 구조 ]
[ 변경된 프로젝트 구조 ]
기존 settings.py에 작성된 내용들을 django-atoz/tutorial/tutorial/settings/base.py 로 변경해주세요.
base : 모든 환경에 필요한 공통된 설정 정보를 저장할 파일이 base.py 이며 기존 프로젝트의 settings.py의 정보를 복사합니다.
local, development, production 에는 base.py 내용을 import 합시다.
from [django-project-name].settings.base import *
위 코드를 통해 base.py에 있는 파일을 불러옵니다.
또한 분리할 정보 DEBUG나 DATABASES 가 있다면 base 에서 지우고 환경에 맞는 파일에 코드를 작성합니다.
또한, 우리가 이전에 SECRET KEY를 불러오기 위한 경로가 한 depth 증가했으므로 base.py에서 변경해줍니다.
위 작업을 모두 끝냈다면 서버를 실행할 때 변경된 설정 파일을 읽도록 해야합니다.
이제 서버를 구동할 때,
python manage.py runserver --settings=[django-project-name].settings.local
python manage.py runserver --settings=[django-project-name].settings.development
python manage.py runserver --settings=[django-project-name].settings.production
처럼 실행하여 원하는 환경으로 애플리케이션을 구동할 수 있습니다!
자.. 드디어 께끗한 환경(?)에서 장고 REST API를 만들 준비를 완료했습니다!!
이제 다음 포스팅에서는 DRF(django-rest-framework)를 활용하여 REST API를 만들어보겠습니다!!
[추가 Tip]
wsgi.py 에서 기본 deafult 를 변경할 수 도 있습니다.
'Server > Django' 카테고리의 다른 글
[장고 AtoZ] Django REST Framewrok - ViewSet(Params) (0) | 2018.02.06 |
---|---|
[장고 AtoZ] Django REST Framewrok - ViewSet (0) | 2018.02.06 |
[장고 AtoZ] SECRET KEY 분리 (1) | 2018.02.05 |
[장고 AtoZ] Django 서버 실행 (0) | 2018.02.02 |
[장고 AtoZ] pyenv, virtualenv (0) | 2018.02.02 |