Pycharm 上的 Django : ImproperlyConfigured with DJANGO_SETTINGS_MODULE

标签 django python-3.x django-views pycharm django-settings

我正在尝试使用 Pycharm 社区版来改进我的 Django 应用程序中的代码,但我无法运行我想要的所有 Django 代码。我不断收到此回溯...

Traceback (most recent call last):
 File "C:/Users/Jaysp_000/firstSite/PROJECTone/blog_static/views.py", line 1, in <module>
   from django.views.decorators.csrf import csrf_exempt
 File "C:\Python34\lib\site-packages\django\views\decorators\csrf.py", line 3, in <module>
from django.middleware.csrf import CsrfViewMiddleware, get_token
 File "C:\Python34\lib\site-packages\django\middleware\csrf.py", line 14, in <module>
from django.utils.cache import patch_vary_headers
 File "C:\Python34\lib\site-packages\django\utils\cache.py", line 26, in <module>
from django.core.cache import caches
 File "C:\Python34\lib\site-packages\django\core\cache\__init__.py", line 34, in <module>
if DEFAULT_CACHE_ALIAS not in settings.CACHES:
 File "C:\Python34\lib\site-packages\django\conf\__init__.py", line 48, in __getattr__
self._setup(name)
 File "C:\Python34\lib\site-packages\django\conf\__init__.py", line 42, in _setup
% (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting CACHES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

这个错误似乎涉及到django.views.decortors.csrf.csrf_exempt我导入到我的 views.py 文件中。我试过其他文件,他们没有给我任何问题。这个导入有一些特别之处,但我不知道是什么。
from django.views.decortors.csrf import csrf_exempt

@csrf_exempt
def handle_hook(request):
    from django.http import HttpResponse
    from django.core.management import call_command
    result = call_command('update_blog', verbosity = 0)
    return HttpResponse(result)

当我尝试在 python shell 上运行代码(我使用 3.4)以及当我 import django.http.request as request 时,会出现同样的问题。 .我输入 handle_hook(request) ,我得到了同样的错误。

我被告知我必须在访问设置之前定义环境变量 DJANGO_SETTINGS_MODULE 或调用 settings.configure(),但我不知道如何做到这一点。我环顾四周,我不确定这些方法是否特别适合我的问题。有什么线索吗?

最佳答案

转到“运行”菜单,选择“编辑配置...”,然后为您的测试选择运行配置。

选择环境变量按钮。您将看到一个现有变量,即 PYTHONUNBUFFERED
在该添加下(例如)DJANGO_SETTINGS_MODULE=mysitename.settings

enter image description here

关于Pycharm 上的 Django : ImproperlyConfigured with DJANGO_SETTINGS_MODULE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31796715/

相关文章:

python - 在 django 中使用 python 格式化字符串

python - 我怎样才能将每个对象与每个对象进行比较?

Python Pandas : how to remove nan and -inf values

python - Python 3.2 中的部分正则表达式匹配

django - 需要登录总是呈现到主页

Django 动态 url。我究竟做错了什么?

python - 在 Django 模板中调用 Python 函数

javascript - 从ajax POST方法获取数据后,在django中打开另一个窗口

python-3.x - 通过重新定义 style.kv 自定义 Kivy 设置面板

python - 如何从 python(django) 中的字符串中分离数字?