【发布时间】:2017-09-18 01:23:39
【问题描述】:
我在 myapp/settings.py 文件中使用以下 sqlite 连接:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': ':testdb:',
#I also tried 'NAME': 'testdb',
},
}
在我正在使用的 manage.py 文件中:
if __name__ == "__main__":
os.environ.setdefault("myapp.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
在命令行上运行 ./manage.py migrate 时出现以下错误:
django.db.utils.OperationalError: fe_sendauth: no password supplied
我尝试删除 psycopg2 并重新运行迁移并收到以下错误:
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named 'psycopg2'
我不明白为什么 django 试图连接到一个 psql 数据库,其中应用程序中唯一的 DATABSES 配置是用于 sqlite3。
这可能是由于依赖关系吗?
【问题讨论】:
-
这可能是由于依赖项之一。您介意分享您的整个
settings.py文件吗?我相信在某些地方,有一个导入覆盖了您的DATABASES变量 -
@KrishnaChaitanyaKornepati 是的依赖相关,我在一个部门编辑了源代码。要解决这个问题。你可以把你的评论放在上面,如果我没有在我的设置中的任何地方使用 psql 并且我会接受你的回答,也许可以解释为什么它必须是一个依赖项
标签: python django postgresql sqlite