개요
이 가이드 에서는 Django 프로젝트와 MongoDB 의 연결을 구성하는 방법을 학습 수 있습니다.
연결 구성
장고 MongoDB 백엔드를 설치하고 프로젝트 만든 후 프로젝트의 settings.py
파일 에서 DATABASES
설정을 수정하여 MongoDB 에 대한 연결을 구성할 수 있습니다.
팁
장고 MongoDB 백엔드를 설치하고 장고 프로젝트 만드는 방법을 학습 시작하기 튜토리얼을 참조하세요.
다음 코드에 표시된 대로 DATABASES
을 default
키가 포함된 딕셔너리로 설정합니다.
DATABASES = { "default": { # Specify nested dictionary keys here }, }
default
키를 구성하려면 중첩된 사전을 해당 값으로 할당합니다. 이 중첩 사전에는 다음과 같은 키가 있습니다.
키 | 설명 |
---|---|
ENGINE | 연결에 사용할 백엔드 운전자 . 이 키를 |
호스트 | The hostname. For localhost connections, this key is optional. For SRV connections, you must include a scheme prefix ( mongodb+srv:// ).You can also specify a connection URI in this key. For more information,
see Automatically Configure Database Settings. To specify more than one host, include all hostnames in one string. Use
a comma to separate each hostname. Example: "HOST": "mongodb://mongos0.example.com:27017,mongos1.example.com:27017" |
이름 | 사용하려는 데이터베이스 . |
사용자 | 연결에 인증 필요한 경우 데이터베이스 인증을 위한 사용자 이름 . |
PASSWORD | 연결에 인증 필요한 경우 데이터베이스 사용자의 비밀번호입니다. |
포트 | The port number on which the database server is listening. The default
port is 27017 .For MongoDB Atlas connections, this key is optional. |
옵션 | A dictionary of additional connection options for the database. This key is optional. To see a full list of connection options that you can set in the OPTIONS key,
see the optional parameters for MongoClient
in the PyMongo API documentation. |
이 섹션에서는 DATABASES
설정을 사용하여 다음과 같은 방법으로 연결을 구성하는 방법을 보여 줍니다.
데이터베이스 설정 자동 구성: 중첩된
HOST
키를 사용하여 연결 URI를 지정하고 연결 설정을 자동으로 구성합니다.데이터베이스 설정 수동 구성: 여러 사전 키에 대한 연결 설정을 지정합니다.
데이터베이스 설정 자동 구성
중요
v5.2.1에 추가됨
장고 MongoDB 백엔드 v5.2.1 중첩된 HOST
키에 연결 URI를 지정하기 위한 지원 추가합니다. 이전 버전을 사용하는 경우에도 연결을 수동으로 구성 하거나 parse_uri() 함수를 사용할 수 있습니다.
연결 URI에 연결 설정을 지정하려면 다음과 같은 중첩된 default
키를 설정하다 .
ENGINE
:"django_mongodb_backend"
로 설정합니다.HOST
: 연결 URI로 설정합니다.NAME
: 사용하려는 데이터베이스 의 이름으로 설정합니다.
이전 섹션 에서 설명한 다른 모든 키는 선택 사항입니다.
예시
이 예시 ENGINE
, HOST
및 NAME
키만 사용하여 MongoDB 에 대한 연결을 구성합니다. DATABASES
설정은 다음 조치를 수행합니다.
사용자 이름
my_user
이고 비밀번호가my_password
인 데이터베이스 사용자에 대한 인증 정보를 제공합니다.retryWrites
연결 옵션을true
로 설정하여 특정 쓰기 (write) 작업이 실패할 경우 자동으로 재시도하도록 운전자 구성합니다.w
연결 옵션을majority
로 설정하여 쓰기 (write) 작업을 수행하기 전에 대부분의 복제본 세트 멤버의 승인을 기다리도록 운전자 구성합니다.데이터베이스 다음으로 설정합니다.
my_database
DATABASES = { "default": { "ENGINE": "django_mongodb_backend", "HOST": "mongodb+srv://my_user:[email protected]/?retryWrites=true&w=majority", "NAME": "my_database", }
참고
DATABASES
설정에서 추가 키를 지정하면 해당 키의 값이 연결 URI에서 구문 분석된 충돌하는 모든 값을 재정의합니다.
데이터베이스 설정 수동 구성
default
키 전체에 연결 정보를 지정하여 연결 설정을 수동으로 구성할 수 있습니다.
예시
이 예시 사전 키를 사용하여 이전 예시와 동일한 데이터베이스 연결을 구성합니다.
DATABASES = { "default": { "ENGINE": "django_mongodb_backend", "HOST": "mongodb+srv://cluster0.example.mongodb.net", "NAME": "my_database", "USER": "my_user", "PASSWORD": "my_password", "PORT": 27017, "OPTIONS": { "retryWrites": "true", "w": "majority", }, }, }
추가 정보
MongoDB database 연결을 구성하는 샘플 프로젝트 보려면 시작하기 튜토리얼의 MongoDB 연결 구성 단계를 참조하세요.
장고 설정에 대해 자세히 학습 장고 문서에서 설정을 참조하세요.