解决django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings...问题

报错描述

使用pycarm开发django程序,,如果不在django console测试程序,而是直接在终端或者文件夹下编写程序与数据库交互,出现如下报错。

Traceback (most recent call last):
  File "E:/Users/Administrator/PycharmProjects/MyDjango/user_defined/wordsSplitTest.py", line 11, in <module>
    from index.models import DgaCount
  File "E:\Users\Administrator\PycharmProjects\MyDjango\index\models.py", line 12, in <module>
    class DgaProject(models.Model):
  File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\db\models\base.py", line 87, in __new__
    app_config = apps.get_containing_app_config(module)
  File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\apps\registry.py", line 249, in get_containing_app_config
    self.check_apps_ready()
  File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\apps\registry.py", line 131, in check_apps_ready
    settings.INSTALLED_APPS
  File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\conf\__init__.py", line 57, in __getattr__
    self._setup(name)
  File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\conf\__init__.py", line 42, in _setup
    % (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

报错分析

  • 先看下的我的源代码。

这段代码是想统计数据库中‘dgaSum’这一列的所有数据和。

from django.db.models import Sum

import os
from index.models import DgaCount
def main():
    d = DgaCount.dgaSum = DgaCount.objects.aggregate(Sum('dgaSum'))
    print(d)

if __name__ =='__main__':
    main()
  • 为什么会出现上示错误呢?

当我引入modles时,是因为程序没有识别出database这个应用,虽然我已经把database应用添加到setting文件中了,但是还是需要在文件开头添加两行配置环境变量的配置语句,让程序知道该去哪儿寻找 models 中的文件。

解决方法

1

在文件头添加配置环境变量的语句,要特别主要添加顺序,以免出现不可预料的错误,搞的一头雾水。

from django.db.models import Sum

import os
import django
os.environ.setdefault('DJANGO_SETTING_MODULE', 'MyDjango.settings')
django.setup()
from index.models import DgaCount
def main():
    d = DgaCount.dgaSum = DgaCount.objects.aggregate(Sum('dgaSum'))
    print(d)

if __name__ =='__main__':
    main()

此时发现报错信息发生变化:

File "E:\Users\Administrator\Anaconda3\envs\test3.6\lib\site-packages\django\conf\__init__.py", line 42, in _setup
    % (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

2

将配置添加到pycharm中的python配置中
在这里插入图片描述
在环境变量(environment variables)这一栏添加如下信息:
在这里插入图片描述
此时去运行,完美解决!
在这里插入图片描述
**注意:**可以仔细看下看图中我标出的文件目录信息,根据自己的实际情况做修改,以便花最少的时间去解决。

本文大量参考:PyCharm中运行django程序 期间发现之前的方法不能解决我的问题,在原博主的基础上进行了一些修改得以解决,同时做了更详细的整理。在此感谢博主分享。

  • 23
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 20
    评论
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured是一个常见的错误。这个错误提示表明在访问设置之前,需要配置Django的设置。 解决这个问题的方法有两种: 1. 定义环境变量DJANGO_SETTINGS_MODULE: 在项目的根目录中,可以通过在终端中使用export命令来定义环境变量DJANGO_SETTINGS_MODULE,例如: export DJANGO_SETTINGS_MODULE=<项目名称>.settings 然后再次运行项目,应该就不会再报错了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [django调试问题django.core.exceptions.ImproperlyConfigured](https://blog.csdn.net/weixin_44602651/article/details/120456631)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Django报错:django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS解决办法](https://blog.csdn.net/jyr2014/article/details/126753776)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值