簡體   English   中英

uWSGI + Django:如何將Django的過時警告視為錯誤?

[英]uWSGI + Django: How can I get Django's deprecation warnings to be treated as errors?

我的目標是將Django的過時警告視為錯誤。 我一直在嘗試使用Django 1.9副本,但無法使其與uWSGI兼容(我認為)。 這是我所做的:

在我的settings.py文件中,我更改了django. template .context_processors.debug django. template .context_processors.debugdjango. core .context_processors.debug django. core .context_processors.debug ,以引起RemovedInDjango110Warning的出現。 然后,我運行runserver並訪問了該站點。 該警告顯示在runserver輸出中,但是,正如預期的那樣,它沒有被視為錯誤。

接下來,我運行export PYTHONWARNINGS=error 之后,我運行了runserver並訪問了該站點。 這次,警告被視為錯誤,這正是我想要的。

為了嘗試使用uWSGI復制此行為,我將其添加到了uWSGI conf文件中:

env = PYTHONWARNINGS=error

然后,我訪問了該站點。 該警告顯示在uWSGI日志中,但是並未被視為錯誤。 為了確認是否設置了PYTHONWARNINGS環境變量,我將其添加到了wsgi.py文件中:

print('PYTHONWARNINGS: %s' % os.environ.get('PYTHONWARNINGS', '[not set]'))

這導致PYTHONWARNINGS: error在uWSGI日志中輸出,所以我不確定是什么問題。 有任何想法嗎?

它不是uWSGI配置解決方案,但您可以將以下代碼段添加到項目的urls.py頂部:

import warnings
warnings.simplefilter('error', DeprecationWarning)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM