Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django.core.exceptions.ImpropertlyConfigured:请求设置日志记录\u配置,但未配置设置_Python_Django - Fatal编程技术网

Python django.core.exceptions.ImpropertlyConfigured:请求设置日志记录\u配置,但未配置设置

Python django.core.exceptions.ImpropertlyConfigured:请求设置日志记录\u配置,但未配置设置,python,django,Python,Django,我正在尝试运行一个填充脚本,它是我从tango_with_django教程()中组合而成的,但是我得到了下面的回溯,它似乎与django 1.7中所做的更改有关?如果有人能解释一下我做错了什么,我将不胜感激 (test_env) C:\Users\WriteCode\test_env\epl>python populate_clubs.py Traceback (most recent call last): File "populate_clubs.py", line 4, in &

我正在尝试运行一个填充脚本,它是我从tango_with_django教程()中组合而成的,但是我得到了下面的回溯,它似乎与django 1.7中所做的更改有关?如果有人能解释一下我做错了什么,我将不胜感激

(test_env) C:\Users\WriteCode\test_env\epl>python populate_clubs.py
Traceback (most recent call last):
  File "populate_clubs.py", line 4, in <module>
    django.setup()
  File "c:\Python27\lib\site-packages\django\__init__.py", line 20, in setup
    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  File "c:\Python27\lib\site-packages\django\conf\__init__.py", line 46, in __ge
tattr__
    self._setup(name)
  File "c:\Python27\lib\site-packages\django\conf\__init__.py", line 40, in _set
up
    % (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, b
ut settings are not configured. You must either define the environment variable
DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

(test_env) C:\Users\WriteCode\test_env\epl>

调用
django.setup()
应该在设置
django\u设置\u模块
环境变量之后进行。只需将其移动到
os.environ.setdefault()

之后的
\uuuu main\uuuuuuu
中,就可以在
DJANGO.setup()之前插入
os.environ.setdefault(“DJANGO\u设置模块”、“mysite.SETTINGS”)
line.

如果在终端中运行
python
启动与Django的交互后,遇到类似错误,在适当的目录中运行
python manage.py shell
可以解决问题。

对于开发和调试,可以使用python包

使用pip安装

pip install standalone
使用standalone从模块中使用Django

# add the following to the top of the module.
import standalone
standalone.run('mysite.settings') # replace with your settings module.

# your code goes below the configuration
import os
import sys

# ... .. .  whole module

现在,您可以将模块作为Python Django脚本运行。

我在非Django模块中使用与Django相关的导入语句时遇到了这种情况。

i、 e
来自index.views导入视图,这确实给我带来了一个错误

我在设置环境时遇到了同样的问题

(我试图添加以下内容:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_project.settings")
进入Django控制台中的“启动脚本窗口”,或重写.wsgi文件,但全部失败)

我的最终解决方案:(打开终端并手动设置环境)

以下是步骤:(适用于mac)

  • 打开终端并键入vim~/.bash_profile

  • 添加以下行:

     PATH=${PATH}:/Users/work/workspace/[virtual_environment]/bin
     PYTHONPATH=${PATH}:/Users/work/PycharmProjects/[project_name]
     DJANGO_SETTINGS_MODULE=[project_name].settings
    
  • 类型:wq保存并退出终端

  • 键入source~/.bash_profile以重新加载它

  • 这次运行
    python manage.py
    shell时,它将起作用

    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'epl.settings')
    
    应该在上面

    import django
    
    也就是说,在导入和调用django设置之前,您应该调用django\u设置\u模块


    希望这会有所帮助。

    如果您正在运行PyCharm,对我来说有效的方法是使缓存无效并重新启动应用程序

    File=>使缓存无效/重新启动…


    我的virtualenv最近从Python 3.6或3.7更新为3.8。

    使用管理命令可能是使用脚本与django交互的最简单方法。我使用PyCharm(2017.2.3版)作为IDE遇到了同样的问题。要修复这个问题,您需要转到
    PyCharm->Settings->Build,Execution,Deployment->Console->Django Console
    。然后在
    启动脚本
    窗口中输入
    os.environ.setdefault(…)
    。在
    PyCharm->Settings->Build,Execution,Deployment->Console->Django Console
    中有一个专门的按钮来设置
    环境变量
    。打开它并添加
    DJANGO\u设置\u模块
    =
    一些项目。设置
    我忘了DJANGO有自己的交互式shell。这帮我解决了!
    import django