Django es un popular marco de desarrollo web en Python que facilita el desarrollo de sitios web robustos y seguros con menos esfuerzo y tiempo. Entre varias de sus características robustas, Django viene con su propia interfaz Object-Relational Mapping (ORM) que puede interactuar con diferentes bases de datos como MySQL, SQLite, y PostgreSQL. Este último es una base de datos de código abierto poderosa y de amplia adopción.
Para utilizar Django con PostgreSQL, necesitaremos instalar algunos paquetes y configurar Django para que use PostgreSQL como su base de datos.
Primero, tenemos que asegurarnos de que tenemos PostgreSQL instalado en nuestro sistema. Puede instalarlo usando el comando sudo apt-get install postgresql en sistemas basados en Debian. También necesitamos instalar su adaptador psycopg2 para Python con pip install psycopg2.
Ahora, debemos crear una base de datos en PostgreSQL. Podemos hacer esto usando el comando de shell de PostgreSQL:
```
sudo -u postgres psql
postgres=# CREATE DATABASE mydjangodb;
postgres=# CREATE USER mydjango WITH PASSWORD ‘mypassword’;
postgres=# GRANT ALL PRIVILEGES ON DATABASE mydjangodb TO mydjango;
```
Con esto, hemos creado una base de datos llamada “mydjangodb” y un usuario “mydjango” con acceso a esta base de datos.
El siguiente paso es configurar Django para usar PostgreSQL. En el archivo settings.py de nuestro proyecto Django, encontraríamos una sección de BASES DE DATOS. Necesitamos reemplazarlo con:
```python
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.postgresql_psycopg2’,
‘NAME’: ‘mydjangodb’,
‘USER’: ‘mydjango’,
‘PASSWORD’: ‘mypassword’,
‘HOST’: ‘localhost’,
‘PORT’: ‘’,
}
}
```
Después de realizar estos cambios, Django ahora usará PostgreSQL como su base de datos.
Para verificar que Django puede acceder y trabajar con la base de datos PostgreSQL, puede usar el comando python manage.py migrate para aplicar las migraciones por defecto.
Las instrucciones anteriores están basadas en la documentación oficial de Django (https://docs.djangoproject.com/en/3.2/ref/databases/#postgresql-notes) y en la documentación oficial de PostgreSQL (https://www.postgresql.org/docs/).