Reputation: 1495
I am working on a Django Project 3.0.7 using Python 3.8. Something was updated inadvertently [like the title says] and I can't seem to figure out what it is.
Any assistance is appreciated, full traceback below:
File "C:\Program Files (x86)\Python383-32\lib\threading.py", line 932, in _bootstrap_inner
self.run()
File "C:\Program Files (x86)\Python383-32\lib\threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\utils\autoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\core\management\commands\runserver.py", line 109, in inner_run
autoreload.raise_last_exception()
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\utils\autoreload.py", line 76, in raise_last_exception
raise _exception[1]
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\core\management\__init__.py", line 357, in execute
autoreload.check_errors(django.setup)()
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\utils\autoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\apps\registry.py", line 114, in populate
app_config.import_models()
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\apps\config.py", line 211, in import_models
self.models_module = import_module(models_module_name)
File "C:\Program Files (x86)\Python383-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 783, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\contrib\auth\models.py", line 2, in <module>
from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\contrib\auth\base_user.py", line 47, in <module>
class AbstractBaseUser(models.Model):
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\models\base.py", line 121, in __new__
new_class.add_to_class('_meta', Options(meta, app_label))
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\models\base.py", line 325, in add_to_class
value.contribute_to_class(cls, name)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\models\options.py", line 208, in contribute_to_class
self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\__init__.py", line 28, in __getattr__
return getattr(connections[DEFAULT_DB_ALIAS], item)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\utils.py", line 207, in __getitem__
backend = load_backend(db['ENGINE'])
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\utils.py", line 111, in load_backend
return import_module('%s.base' % backend_name)
File "C:\Program Files (x86)\Python383-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\sql_server\pyodbc\base.py", line 12, in <module>
raise ImproperlyConfigured("Django %d.%d.%d is not supported." % VERSION[:3])
django.core.exceptions.ImproperlyConfigured: Django 3.0.7 is not supported.
Upvotes: 1
Views: 67
Reputation: 1748
You have either updated your Django version or the database backend. You can roll back to a previous working state if you are using VCS and try reinstalling the libraries (I hope you had specified the versions in requirements.txt
).
The traceback
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\utils.py", line 207, in __getitem__
backend = load_backend(db['ENGINE'])
File "C:\Program Files (x86)\Python383-32\lib\site-packages\django\db\utils.py", line 111, in load_backend
return import_module('%s.base' % backend_name)
File "C:\Program Files (x86)\Python383-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Program Files (x86)\Python383-32\lib\site-packages\sql_server\pyodbc\base.py", line 12, in <module>
raise ImproperlyConfigured("Django %d.%d.%d is not supported." % VERSION[:3])
points to that you may have DATABASE_ENGINE='sql_server.pyodbc'
which is supported via django-pyodbc-azure
. Why? A quick GitHub search led me to the line 12 of django-pyodbc-azure/sql_server/pyodbc/base.py which is in sync with the traceback path. If you are indeed using that library, it looks like it works with Django 2.1 only. Are you sure you weren't using Django 2.1 when it last worked? Or maybe you installed this library after installing Django 3.x and it is correctly throwing an error in which case you should look for a different library for your database backend that supports Django 3.x or downgrade your existing version to 2.1.
Upvotes: 1