django-admin dbshel​​l引发django.core.exceptions.ImproperlyConfigured

时间:2019-01-04 22:34:11

标签: django

我知道这个问题以前曾被问过,但是到目前为止,没有人为我工作,所以我将在这里给它一个机会。

我正在尝试将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

  • 在settings.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

工作吗?

1 个答案:

答案 0 :(得分:1)

基于django文档,manage.py与django-admin的功能相同,并且还将设置添加到sys路径,因此应使用manage.py而不是django-admin

https://docs.djangoproject.com/en/2.1/ref/django-admin/