我的目标是将Django的弃用警告视为错误。我一直在尝试使用Django 1.9的副本,并且无法像uWSGI那样(我认为)它的工作方式。这就是我所做的:
在我的settings.py文件中,我将django.template.context_processors.debug
更改为django.core.context_processors.debug
,以便引发RemovedInDjango110Warning
。然后我运行了runserver
并访问了该网站。警告显示在runserver
输出中,但正如预期的那样,它并未被视为错误。
接下来,我运行了export PYTHONWARNINGS=error
。之后,我运行了runserver
并访问了该网站。这一次,警告被视为错误,这就是我想要的。
为了尝试使用uWSGI复制此行为,我将其添加到我的uWSGI配置文件中:
env = PYTHONWARNINGS=error
然后我访问了该网站。警告出现在uWSGI日志中,但并未将其视为错误。要确认正在设置PYTHONWARNINGS
环境变量,我将其添加到我的wsgi.py文件中:
print('PYTHONWARNINGS: %s' % os.environ.get('PYTHONWARNINGS', '[not set]'))
这导致在uWSGI日志中输出PYTHONWARNINGS: error
,因此我不确定问题是什么。有什么想法吗?
答案 0 :(得分:0)
它不是uWSGI配置解决方案,但您可以将以下代码段添加到项目的顶部urls.py
:
import warnings
warnings.simplefilter('error', DeprecationWarning)