Instalé postgresql para mi proyecto django. Anteriormente, cuando lo instalé y makemigrations , funcionó bien, pero debido a algunas razones tuve que desinstalar postgresql y eliminé sus archivos y reinstalé postgresql, cuando lo ejecuto ahora, me mostraba este error insano.
Archivo de configuración:
# Database # https://docs.djangoproject.com/en/1.9/ref/settings/#databases DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': '*****', 'USER': '*****', 'PASSWORD': '',Error:
File "/Users/Devadanam/Desktop/trackingsys/lib/python2.7/site-packages/django/db/__init__.py", line 33, in __getattr__ return getattr(connections[DEFAULT_DB_ALIAS], item) File "/Users/Devadanam/Desktop/trackingsys/lib/python2.7/site-packages/django/db/utils.py", line 211, in __getitem__ backend = load_backend(db['ENGINE']) File "/Users/Devadanam/Desktop/trackingsys/lib/python2.7/site-packages/django/db/utils.py", line 134, in load_backend raise ImproperlyConfigured(error_msg) django.core.exceptions.ImproperlyConfigured: 'django.db.backends.postgresql' isn't an available database backend. Try using 'django.db.backends.XXX', where XXX is one of: 'mysql', 'oracle', 'sqlite3' Error was: No module named postgresql.baseParece que no has instalado psycopg2
pip install psycopg2Otra posible razón es
Cambiado en Django 1.9:
El backend django.db.backends.postgresql se denomina django.db.backends.postgresql_psycopg2 en versiones anteriores. Para compatibilidad con versiones anteriores, el nombre anterior aún funciona en versiones más nuevas.
https://docs.djangoproject.com/en/1.9/ref/settings/#std:setting-DATABASE-ENGINE
Entonces deberías cambiar para usar django.db.backends.postgresql
El problema es que eliminé los archivos postgresql en lib/python/../django/db de mi virtualenv. Creé un nuevo virtualenv y todos los archivos postgres estaban de vuelta. ¡Disculpe por eso!