Django 개발 환경과 프로덕션 환경의 구분 상세 정보
1884 단어 Django
일반적인 Django 프로젝트 개발에서 우리는 로컬 개발 환경과 원격 서버 생산 환경의 설정이 다르다는 문제에 자주 부딪힌다.이러한 차이점에 대해 이전의 방법은 생산 환경의 설정을 직접 수정하는 것이다.그러나 자동화 시스템을 꿈꾸는 개발자들에게는 어리석은 짓이다.
그러면 일반적인 방법은 무엇입니까?서로 다른 환경인 만큼 두 개의 다른 프로필은 필수적이다.
프로파일 준비
새 Django 프로젝트에서 settings.py 동급 디렉토리에서 두 개의 다른 settings를 준비합니다.
1 2 3 4 5 6 7
|____EveryDay
| |____prd_settings.py
| |______init__.py
| |____settings.py
| |____dev_settings.py
| |____urls.py
| |____wsgi.py
기본setting에서 다른 설정 가져오기
여기에서, 나는django의 기본 설정 모듈인 settings를 수정할 생각은 없습니다.py.현재 환경이 생산 환경인지 개발 환경인지 판별하여 적재량의 서로 다른 설정을 구분한다.so, 우리는 생산 환경을 설정해야만 얻을 수 있는 환경 변수를 설정한 다음에settings에 설치해야 한다.py에서 이 환경 변수의 존재 여부를 판단해서 어떤 설정을 가져올지 결정합니다.
show code:
1 2 3 4 5 6 7 8 9
# settings.py
import
os
# Default settings between dev and prd
if
os.environ.get(
'ENV'
,
None
):
from
.prd_settings
import
*
else
:
from
.dev_settings
import
*
서버가 CentOS7을 사용하기 때문에/etc/profile에 환경 변수를 직접 추가합니다.
1
export ENV="SERVER"
런타임에서 다른 구성 가져오기
manage.py가 실행될 때 - settings 옵션을 제공하여 settings 모듈을 지정하는 데 사용하기 때문에django가 자체로 가지고 있는 debug 서버를 시작하는 데 편리하다.
1
python manage.py rumserver
0.0
.
0.0
:
8000
-
-
settings
=
EveryDay.prd_settings
전재:https://www.jb51.net/article/166257.htm
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django 라우팅 계층 URLconf 작용 및 원리 해석URL 구성(URLconf)은 Django가 지원하는 웹 사이트의 디렉토리와 같습니다.그것의 본질은 URL과 이 URL을 호출할 보기 함수 사이의 맵표입니다. 위의 예제에서는 URL의 값을 캡처하고 위치 매개 변수로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.