Flask安全警告

2024-09-21 00:41:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我每次使用烧瓶保安都会收到警告。

FlaskWTFDeprecationWarning: "flask_wtf.Form" has been renamed to "FlaskForm" 
and will be removed in 1.0.

这是烧瓶安全问题还是我可以自己解决的问题?我用的是烧瓶安全系数=1.7.5

from flask_security import current_user, login_required, RoleMixin, Security, \
SQLAlchemyUserDatastore, UserMixin, utils

我好像不直接进口烧瓶。


Tags: andtoform警告flask烧瓶bewill
2条回答

我的答案是不是您的实际情况所固有的。但是,当我们对此进行编码时,会出现相同的警告消息:

from flask_wtf import Form

要解决此问题,应使用FlaskForm代替Form

from flask_wtf import FlaskForm

这在GitHub中突出显示,我只想在这里分享解决方案,以帮助任何可能在未来面对它的最终实干者。

看起来1.7.5是烧瓶安全的最新版本。最新版本的Flask WTF是0.13(通过检查apip freeze确保安装了它)。

因为您不直接使用Flask WTF,所以问题不是您的代码。这个问题来自Flask Security的代码本身,which has Flask-WTF as a dependency

Flask Security从Flask WTF导入表单类的方式已被弃用,因此当此行运行时您将看到错误:

from flask_wtf import Form as BaseForm

https://github.com/mattupstate/flask-security/blob/e01cd63a214969cf8e4ee800d398e1c43b460c7f/flask_security/forms.py#L15

您可以打开烧瓶安全性问题(可以链接到此问题),也可以自己向作者提交拉取请求,将此行更新为非不推荐的导入

from flask_wtf import FlaskForm as BaseForm

确保在提交之前/之后也运行测试。

对于更多的上下文,您可以使用git-duncy来查看上一次在2013年8月15日更改Flask Security(6f68f1d)中不推荐使用的导入行的提交。

在烧瓶WTF上执行同样的操作,您可以看到该折旧是在2016年6月30日的42cc475中引入的。

相关问题 更多 >

    热门问题