无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016

2024-04-26 21:42:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用django mssql连接到带有django 1.11的MS SQL Server 2016。以下是我的数据库设置:

DATABASE_ENGINE   = 'sqlserver_ado'
DATABASE_NAME     = 'db'
DATABASE_USER     = 'sa'
DATABASE_PASSWORD = '*********'
DATABASE_HOST     = 'localhost'

这是我在尝试运行python时遇到的错误管理.py运行服务器

(mywork) C:\Users\Kaushal_K\Python Dev\producttimeline>python manage.py runserver Unhandled exception in thread started by Traceback (most recent call last):

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\utils\autoreload.py", line 227, in wrapper fn(*args, **kwargs)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\core\management\commands\runserver.py", line 117, in inner_run autoreload.raise_last_exception()

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\utils\autoreload.py", line 250, in raise_last_exception six.reraise(*_exception)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\utils\autoreload.py", line 227, in wrapper fn(*args, **kwargs)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django__init__.py", line 27, in setup apps.populate(settings.INSTALLED_APPS) File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\apps\registry.py", line 108, in populate app_config.import_models()

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\apps\config.py", line 202, in import_models self.models_module = import_module(models_module_name)

File "c:\python27\Lib\importlib__init__.py", line 37, in import_module import(name)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\contrib\auth\models.py", line 4, in from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\contrib\auth\base_user.py", line 52, in class AbstractBaseUser(models.Model):

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db\models\base.py", line 124, in new new_class.add_to_class('_meta', Options(meta, app_label))

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db\models\base.py", line 330, in add_to_class value.contribute_to_class(cls, name)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db\models\options.py", line 214, in contribute_to_class self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db__init__.py", line 33, in getattr return getattr(connections[DEFAULT_DB_ALIAS], item)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db\utils.py", line 212, in getitem conn = backend.DatabaseWrapper(db, alias)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\sqlserver_ado\base.py", line 184, in init super(DatabaseWrapper, self).init(*args, **kwargs)

File "C:\Users\Kaushal_K\Envs\mywork\lib\site-packages\django\db\backends\base\base.py", line 96, in init self.client = self.client_class(self)

TypeError: Error when calling the metaclass bases 'NoneType' object is not callable ^C

我到处找遍了,但似乎无法理解和解决这个问题。希望有人能帮忙!谢谢!在

PS:我已经创建了数据库。在


Tags: djangoinpyselfdbmodelslibpackages
2条回答

我使用了pyodbc而不是mssql,它起作用了好的。给你链接是如何使用pyodbchttps://docs.microsoft.com/en-us/sql/connect/python/pyodbc/step-1-configure-development-environment-for-pyodbc-python-development

也有同样的问题。然后看了看-https://pypi.org/project/django-mssql/-“Django版本:1.8”。尝试安装它-是的,它可以与django mssql==1.8一起工作。幸运的是,对于这个特殊的需要,我可以使用这个老版本的Django。在

更新。现在下一个问题-“ImportError:没有名为pythoncom的模块”。“pip install pywin32”也不起作用。在

相关问题 更多 >