Overview
En esta guía, puedes aprender cómo configurar la conexión de tu proyecto Django con MongoDB.
Configuración de conexión
Después de instalar Django MongoDB Backend y crear un proyecto, puedes configurar tu conexión a MongoDB modificando el DATABASES configuración en el archivo settings.py de tu proyecto.
Tip
Para aprender cómo instalar el Backend de Django MongoDB y crear un proyecto Django, visita el Comience con Django MongoDB Backend tutorial.
Establece 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, asigna un diccionario anidado como su valor. Este diccionario anidado tiene las siguientes claves:
Clave | Descripción |
|---|---|
motor | El controlador de backend que se utilizará para la conexión. Establece 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. |
USER | El nombre de usuario para autenticarse en la base de datos, si la 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 usar el ajuste DATABASES para configurar tu conexión de las siguientes maneras:
Configurar la configuración de la base de datos automáticamente: Utilice la clave
HOSTanidada para especificar su URI de conexión y configurar automáticamente la configuración de conexión.Configura los ajustes de la base de datos manualmente: Especifica los ajustes de conexión en varias teclas de diccionario.
Configurar automáticamente la configuración de la base de datos
Importante
Añadido en v5.2.1
Django MongoDB Backend v5.2.1 add soporte para especificar un URI de conexión en la clave anidada HOST. Si utilizas una versión anterior, aún puedes configurar manualmente tu conexión o utilizar la función obsoleta parse_uri().
Para especificar la configuración de la conexión en tu URI de conexión, establece las siguientes claves anidadas de default:
ENGINE: Establecer en"django_mongodb_backend".HOSTAjuste a tu 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 con 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 driver para reintentar automáticamente ciertas operaciones de guardado si fallanEstablece la opción de conexión
wenmajority, lo que configura al 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 se especifican claves adicionales en la configuración DATABASES, los valores de esas claves anulan cualquier valor en conflicto analizado desde la URI de conexión.
Configurar manualmente la configuración de la base de datos
Puedes configurar manualmente la configuración de tu conexión especificando la información de conexión a través de las claves 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, consulta el paso Configura tu conexión de MongoDB en el tutorial de comenzar.
Para aprender más sobre la configuración de Django, consulta Configuración en la documentación de Django.