gpt4 book ai didi

python - Django 中的详细弃用警告

转载 作者:太空狗 更新时间:2023-10-29 20:33:33 25 4
gpt4 key购买 nike

从 django 1.3 升级到 django 1.5 后,我开始在测试运行期间看到这些 DeprecationWarnings:

path_to_virtualenv/lib/python2.6/site-packages/django/http/request.py:193: DeprecationWarning: HttpRequest.raw_post_data has been deprecated. Use HttpRequest.body instead.

我在项目中搜索了 raw_post_data 但一无所获。所以并没有在项目中直接使用。然后,我手动检查了 INSTALLED_APPS,发现 raven 模块仍然使用 raw_post_data,这是原因,但是..

是否可以在测试运行时看到DeprecationWarning的原因?如何使这些警告更加冗长?

最佳答案

你可以设置Python warning control通过命令行选项 -WDeprecationWarning 上引发带有 traceback 的异常,例如错误而不是一次普通的简单警告。任何特定警告都可以按消息、类别、模块、行或它们的组合进行过滤。

例子:

python -W error:"raw_post_data has been deprecated" manage.py test

python -W error::DeprecationWarning manage.py test

python -W error:::django.http.request manage.py test

如果您想通过在一个大项目的许多文件中批量编辑来修复一种类型的所有警告,则精细过滤很有用。


Python 2.7 和更高版本通常会在未重新启用时忽略 DeprecationWarning,例如通过 -Wd 选项或通过环境变量 export PYTHONWARNINGS="d"。这对开发机器很有用,但对生产机器没有用。

关于python - Django 中的详细弃用警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16389572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com