Python/Django - 连接到旧版 SQL Server Databse 收到错误"AttributeError: 'module' object has no attribute 's



所以我使用 django-mssql 和 pywin32-218.win-amd64-py2.7 将我的 Django 应用程序连接到 SQL 服务器数据库

如果我通过创建模型和同步数据库从头开始,一切都很好。

但是,我想连接到现有的SQL Server DB。我按照这些说明操作

并最终得到以下模型:

from __future__ import unicode_literals
from django.db import models

class Payload(models.Model):
id = models.sqlserver_ado.fields.BigAutoField(db_column='Id') # Field name made lowercase.
code = models.CharField(db_column='Code', max_length=10) # Field name made lowercase.
body = models.TextField(db_column='Body') # Field name made lowercase.
class Meta:
    managed = False
    db_table = 'Payload'

如果我尝试运行"运行服务器",则会出现以下错误:

文件"C:\Users\luke\PycharmProjects\project\API\models.py",第 7 行,在有效负载中 id = models.sqlserver_ado.fields.BigAutoField(db_column='Id') # 字段名称变为小写。属性错误:"模块"对象没有属性"sqlserver_ado"

但是,如果我注释掉"id = models.sqlserver_ado.fields.BigAutoField(db_column='Id') # 字段名称变为小写"这一行。

一切都完美地燃烧起来。

有什么想法吗?!

如果您安装了sqlserver_ado。像这样导入 BigAutoField

from sqlserver_ado.fields import BigAutoField

然后将id = models.sqlserver_ado.fields.BigAutoField(db_column='Id') # Field name made lowercase替换为

id = BigAutoField(db_column='Id') # Field name made lowercase.

相关内容

  • 没有找到相关文章

最新更新