我知道这个问题以前曾被问过,但是到目前为止,没有人为我工作,所以我将在这里给它一个机会。
我正在尝试将MySQL用作django中的数据库,但是当我修改settings.py并运行命令时:
django-admin dbshell
我收到以下错误:
django.core.exceptions.ImproperlyConfigured: Requested setting DATABASES,
but settings are not configured. You must either define the environment
variable DJANGO_SETTINGS_MODULE or call settings.configure()
before accessing settings.
我做了什么: -我正在运行Windows 10。
使用pipenv创建新的虚拟环境。
安装Django。
开始新项目。
编辑设置。py
我将数据库更改为以下内容:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test_db',
'USER': 'root',
'PASSWORD': '****',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
还点安装了mysqlclient
奇怪的是,当我进行迁移时,会创建新表,这意味着数据库可以正常工作。为什么没有命令
django-admin dbshell
工作吗?
答案 0 :(得分:1)
基于django文档,manage.py与django-admin的功能相同,并且还将设置添加到sys路径,因此应使用manage.py而不是django-admin