Overview
En esta guía, puede aprender cómo configurar la conexión de su proyecto Django a MongoDB.
Configuración de la conexión
Después de instalar Django MongoDB Backend y crear un proyecto, puede configurar su conexión a MongoDB modificando el DATABASES configurando en el archivo settings.py de su proyecto.
Tip
Establezca DATABASES en un diccionario que contenga la clave default, como se muestra en el siguiente código:
DATABASES = { "default": { # Specify nested dictionary keys here }, }
Para configurar la clave default, asigne un diccionario anidado como su valor. Este diccionario anidado tiene las siguientes claves:
Clave | Descripción |
|---|---|
MOTOR | El controlador de backend que se usará para la conexión. Establezca esta clave en |
HOST | 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" |
NOMBRE | La base de datos que desea utilizar. |
USUARIO | El nombre de usuario para autenticarse en la base de datos, si su conexión requiere autenticación. |
PASSWORD | La contraseña de su usuario de base de datos, si su conexión requiere autenticación. |
PUERTO | The port number on which the database server is listening. The default
port is 27017.For MongoDB Atlas connections, this key is optional. |
opciones | 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. |
Esta sección muestra cómo utilizar la configuración DATABASES para configurar su conexión de las siguientes maneras:
Configurar automáticamente las
HOSTopciones de la base de datos: utilice la clave anidada para especificar la URI de conexión y configurar las opciones de conexión automáticamente.Configurar manualmente las configuraciones de la base de datos: especifique las configuraciones de conexión en múltiples claves de diccionario.
Configurar automáticamente los ajustes de la base de datos
Importante
Añadido en v5.2.1
La versión 6800 de Django MongoDB Backend5.2.1 permite especificar una URI de conexión en la HOST clave anidada. Si usa una versión anterior, aún puede configurar manualmente su conexión.
Para especificar la configuración de conexión en su URI de conexión, configure las siguientes claves default anidadas:
ENGINE:Establecer en"django_mongodb_backend".HOST:Establezca su URI de conexión.NAME: Establecido en el nombre de la base de datos que deseas usar.
Todas las demás claves descritas en la sección anterior son opcionales.
Ejemplo
Este ejemplo utiliza únicamente las claves ENGINE, HOST y NAME para configurar una conexión a MongoDB. La configuración DATABASES realiza las siguientes acciones:
Proporciona información de autenticación para un usuario de base de datos cuyo nombre de usuario es
my_usery contraseña esmy_passwordEstablece la opción de conexión
retryWritesentrue, lo que configura el controlador para volver a intentar automáticamente ciertas operaciones de escritura si fallan.Establece la opción de conexión
wenmajority, que configura el controlador para esperar la confirmación de la mayoría de los miembros del conjunto de réplicas antes de realizar operaciones de escritura.Establece la base de datos en
my_database
DATABASES = { "default": { "ENGINE": "django_mongodb_backend", "HOST": "mongodb+srv://my_user:my_password@cluster0.example.mongodb.net/?retryWrites=true&w=majority", "NAME": "my_database", }
Nota
Si especifica claves adicionales en la configuración DATABASES, los valores de esas claves anularán cualquier valor conflictivo analizado desde el URI de conexión.
Configurar manualmente la configuración de la base de datos
Puede configurar manualmente los ajustes de conexión especificando la información de conexión en las teclas default.
Ejemplo
Este ejemplo utiliza claves de diccionario para configurar la misma conexión de base de datos que el ejemplo anterior:
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", }, }, }
Información Adicional
Para ver un proyecto de muestra que configura una conexión de base de datos MongoDB, consulte el paso Configurar su conexión MongoDB en el tutorial Primeros pasos.
Para obtener más información sobre la configuración de Django, consulte Configuración en la documentación de Django.