[英]Unable to connect using django-mssql to connect to MS SQL Server 2016 with Django 1.11
我正在尝试使用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 manage.py runserver时得到的错误
(mywork)C:\\ Users \\ Kaushal_K \\ Python Dev \\ producttimeline> python manage.py runserver Traceback启动的线程中的未处理异常(最近一次调用最后一次):
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ utils \\ autoreload.py”,第227行,在包装器fn中(* args,** kwargs)
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ core \\ management \\ commands \\ runserver.py”,第117行,在inner_run中autoreload.raise_last_exception()
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ utils \\ autoreload.py”,第250行,在raise_last_exception six.reraise(* _ exception)中
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ utils \\ autoreload.py”,第227行,在包装器fn中(* args,** kwargs)
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django__init __。py”,第27行,在安装程序apps.populate(settings.INSTALLED_APPS)文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ apps \\ registry.py“,第108行,填充app_config.import_models()
在import_models文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ apps \\ config.py”,第202行,self.models_module = import_module(models_module_name)
在import_module import (name)中输入文件“c:\\ python27 \\ Lib \\ importlib__init __。py”,第37行
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ contrib \\ auth \\ models.py”,第4行,来自django.contrib.auth.base_user import AbstractBaseUser,BaseUserManager
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ contrib \\ auth \\ base_user.py”,第52行,在AbstractBaseUser类(models.Model)中:
在新的 new_class.add_to_class文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db \\ models \\ base.py”第124行('_ meta',选项(meta,app_label))
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db \\ models \\ base.py”,第330行,add_to_class value.contribute_to_class(cls,name)
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db \\ models \\ options.py”,第214行,在contrib_to_class self.db_table = truncate_name(self.db_table,connection.ops.max_name_length) ())
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db__init __。py”,第33行,在getattr中返回getattr(connections [DEFAULT_DB_ALIAS],item)
文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db \\ utils.py”,第212行,在getitem中 conn = backend.DatabaseWrapper(db,alias)
在init super(DatabaseWrapper,self)中的文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ sqlserver_ado \\ base.py”,第184行。 init (* args,** kwargs)
在init self.client = self.client_class(self)中的文件“C:\\ Users \\ Kaushal_K \\ Envs \\ mywork \\ lib \\ site-packages \\ django \\ db \\ backends \\ base \\ base.py”,第96行
TypeError:调用元类库时出错'NoneType'对象不可调用^ C.
我到处寻找,我似乎无法理解并解决问题。 我希望有人能帮帮忙! 谢谢!
PS:我已经创建了数据库。
我使用pyodbc而不是mssql,它运行正常。这是链接如何使用pyodbc https://docs.microsoft.com/en-us/sql/connect/python/pyodbc/step-1-configure-development-environment -用于-pyodbc的Python开发
有同样的问题。 然后看了 - https://pypi.org/project/django-mssql/ - “Django版本:1.8”。 试图安装它 - 是的,它适用于django-mssql == 1.8。 幸运的是,对于这个特殊的需求,我可以继续使用这个旧版本的Django。
更新。 现在下一个问题 - “ImportError:没有名为pythoncom的模块”。 并且“pip install pywin32”也不起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.