【发布时间】:2020-04-24 00:57:31
【问题描述】:
我正在使用 Django 连接到本地数据库。此前,该数据库托管在 Azure 上。 我之前在 Django 设置中使用的连接字符串如下-
用于Azure的sql数据库
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'DatabaseName', #notrealname
'USER': 'username',
'PASSWORD': 'password',
'HOST': 'sql-django-uat.database.windows.net', #notreal
'PORT': '1433',
'OPTIONS': {
'driver': 'ODBC Driver 13 for SQL Server',
'MARS_Connection': 'True',
}
数据库迁移后,该字符串不起作用。我不断收到“登录超时已过期”。
但是用“DATABASE”代替“NAME”是可行的。下面给出的例子-
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'DATABASE': 'DatabaseName', #notrealname
'USER': 'username',
'PASSWORD': 'password',
'HOST': 'on-prem.local',
'PORT': '1433',
'OPTIONS': {
'driver': 'ODBC Driver 13 for SQL Server',
'MARS_Connection': 'True',
}
我的 webapp 进入登录页面。但是在我登录后,我收到错误 - 'ImproperlyConfigured at /login/
settings.DATABASES 配置不正确。请提供 NAME 值。'
谁能告诉我如何解决这个问题?我应该提到将“NAME”字段留空也会产生同样的错误。提前非常感谢。
【问题讨论】:
-
你可以试试这个教程:medium.com/@royce236/… 吗?也许它可以帮助您解决错误。
-
你的 Django 版本是什么?
-
版本为 1.11。谢谢
-
嗨 Suprakash Ghosh,如果我的回答对您有帮助,您可以投票并将其标记为答案(单击答案旁边的复选标记将其从灰色切换为已填充。)? .这对其他社区成员可能是有益的。如果您有任何进展,请告诉我,谢谢。
标签: django database azure django-settings