2017-04-15 1 views
2

Django 응용 프로그램을 SQL Server 2016에 연결하려고합니다. django-pyodbc를 사용해 보았지만 Django 1.11을 지원하지 않습니다. 대신 django-mssql 1.8을 설치했습니다. 응용 프로그램을 실행하려고하면이 오류가 발생합니다. manage.pyDjango를 MSSQL 서버에 연결

에서

execute_from_command_line(sys.argv)에서
TypeError was unhandled by user code 
Message: 'NoneType' object is not callable 

는 여기에 모두 기본 및 SQLOLEDB 공급자를 시도했지만 항상 같은 오류가 발생했습니다 settings.py

DATABASES = { 
'default': { 
    'ENGINE': 'sqlserver_ado', 
    'NAME': 'TEST2', 
    'HOST': 'PCNAME\SQLEXPRESS', 
    'USER': '', 
    'PASSWORD': '', 
    'OPTIONS' : { 
    'provider': 'SQLOLEDB', 
    'use_mars': True, 
    }, 
} 
} 

에서 내 데이타베이스입니다. 나는 또한 사용자와 암호가 설정되어 있거나 사용하지 않고 시도했지만 오류는 동일하게 유지됩니다. 로컬 MySQL DB에 잘 연결할 수 있습니다.

나는 윈도우 10, 비주얼 스튜디오 2015를 실행하고있어가, SQL Server Express가 2016

편집 : 여기

pip freeze

appdirs==1.4.3 
Django==1.11 
django-mssql==1.8 
mysqlclient==1.3.10 
packaging==16.8 
pyodbc==4.0.16 
pyparsing==2.2.0 
pytz==2017.2 
six==1.10.0 

의 출력의 여기 내 requirements.txt의

django==1.11 
mysqlclient==1.3.10 
django-mssql==1.8 
+0

pip로 mssql을 설치 했습니까? –

+0

예, pip를 통해 django-mssql을 설치하고 requirements.txt를 추가했습니다. – user1424311

답변

2

django-mssql documentation, 최신 릴리스는 Django 1.8 만 지원하므로 Django 1.11에서는 작동하지 않습니다.

패키지가 업그레이드 할 django의 최신 버전을 지원할 때까지 기다려야합니다. 그것은 지원되지 않는 데이터베이스 백엔드와 함께 장고를 사용할 때의 문제입니다. 여러분은 타사 패키지 유지 보수에 의존합니다. 그리고 이것은 장고를 최신 상태로 유지하는데 문제가있는 것 같습니다.