我知道以前有人问过这个问题,但到目前为止没有一个对我有用,所以我要在这里给它一个机会。
我试图在 django 中使用 MySQL 作为我的数据库,但是当我修改 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。
开始新项目。
编辑settings.py
在 settings.py 中,我将 DATABASES 更改为以下内容:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test_db', 'USER': 'root', 'PASSWORD': '****', 'HOST': '127.0.0.1', 'PORT': '3306', } }还 pip 安装了 mysqlclient
奇怪的是,当我进行迁移时,会创建新表,这意味着数据库可以正常工作。为什么命令没有
django-admin dbshell
工作?