📅  最后修改于: 2023-12-03 14:52:38.728000             🧑  作者: Mango
在 WTForms 中,可以使用 render_kw
参数向表单字段中注入 HTML。但是需要注意的是,使用这种方法需要确保注入的 HTML 是安全的,不能导致 XSS 攻击。
下面是一个示例代码:
from flask_wtf import FlaskForm
from wtforms import StringField
from wtforms.validators import DataRequired
class MyForm(FlaskForm):
my_field = StringField('My Field', render_kw={"class": "form-control", "placeholder": "Enter text here"})
在上面的代码中,我们向 StringField
字段中注入了两个 HTML 属性:class
和 placeholder
。
为了防止 XSS 攻击,需要确保注入的 HTML 安全。下面是一些建议:
escape
函数对文本进行转义。bleach
等工具过滤用户输入,只允许指定的标签和属性。Markup
类对用户输入进行转义。