Я настраиваю свое приложение django на сервере linux с apache в качестве веб-сервера. Проект имеет ms- sql в качестве бэкэнда. Для подключения я установил следующие пакеты:
django-pyodbc==1.1.3
django-pyodbc-azure==2.1.0.0
django-mssql==1.8
pyodbc==4.0.26
sql-server.pyodbc==1.0
Ниже приведены настройки базы данных:
DATABASES = {
"default": {
"ENGINE": "sql_server.pyodbc",
"NAME": "########",
"USER": "########",
"PASSWORD": "########",
"HOST": "########",
"PORT": "########",
"OPTIONS": {"driver": "ODBC Driver 17 for SQL Server"},
}
}
Я зарегистрировался в своем терминале и требуемый драйвер также установлен
root@5b4341ff02e3:/# python3
Python 3.6.9 (default, Nov 7 2019, 10:44:02)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyodbc as py
>>> py.drivers()
['ODBC Driver 17 for SQL Server']
>>> exit()
Когда я пытаюсь запустить сервер, я сталкиваюсь с проблемой ниже:
File "/usr/local/lib/python3.6/dist-packages/sql_server/pyodbc/base.py", line 7
except ImportError, e:
^
SyntaxError: invalid syntax
Это синтаксическая ошибка, потому что sql_server.pyodb c записано в python2. Что странно, что он отлично работает на моей локальной машине.
Вы, ребята, сталкивались с этой проблемой? Есть ли обходной путь?