diff --git a/django/core/db/__init__.py b/django/core/db/__init__.py index 6b104ac161e..29b2a4e8136 100644 --- a/django/core/db/__init__.py +++ b/django/core/db/__init__.py @@ -17,7 +17,7 @@ from django.conf.settings import DATABASE_ENGINE try: dbmod = __import__('django.core.db.backends.%s' % DATABASE_ENGINE, '', '', ['']) -except ImportError: +except ImportError, exc: # The database backend wasn't found. Display a helpful error message # listing all possible database backends. from django.core.exceptions import ImproperlyConfigured @@ -25,8 +25,8 @@ except ImportError: backend_dir = os.path.join(__path__[0], 'backends') available_backends = [f[:-3] for f in os.listdir(backend_dir) if f.endswith('.py') and not f.startswith('__init__')] available_backends.sort() - raise ImproperlyConfigured, "Your DATABASE_ENGINE setting, %r, is invalid. Is it spelled correctly? Available options are: %s" % \ - (DATABASE_ENGINE, ', '.join(map(repr, available_backends))) + raise ImproperlyConfigured, "Could not load database backend: %s. Is DATABASE_ENGINE (currently, %r) spelled correctly? Available options are: %s" % (exc, DATABASE_ENGINE, ", ".join(map(repr, available_backends))) + #(DATABASE_ENGINE, ', '.join(map(repr, available_backends)))k DatabaseError = dbmod.DatabaseError db = dbmod.DatabaseWrapper()