Python Flask - 根据先前的响应有条件地显示 WTF 字段的最佳方法是什么?
Python Flask - What is the best way to conditionally display WTF fields based on prior responses?
我有一个包含多个字段的 WTF 表单,我只想在不刷新页面的情况下根据对先前字段的响应显示某些字段。例如,假设我有一个字段:
URLInd = BooleanField(u'Do you have a website?',validators=[DataRequired())
如果选中,我想显示:
URL = TextField(u'Please enter your web address',validators=[DataRequired(), URL()])
所以 "URLInd" 可以在初始页面加载时显示,但我只想在 URLInd == True 时显示 "URL"。
HTML:
<form class="form form-horizontal" method="post" role="form" enctype=multipart/form-data action>
{{ form.hidden_tag() }}
{{ wtf.form_errors(form, hiddens="only") }}
{{ wtf.form_field(form.URLInd) }}
{{ wtf.form_field(form.URL) }}
<button type="submit" class="btn btn-primary btn-lg btn-block">Submit</button>
</form>
根据我的研究,我怀疑我需要使用 Javascript 和 AJAX,但我没有使用这两者的经验,而且我无法应用我提供的任何示例我发现了这个问题。预先感谢您的帮助。
字段有 arg message
用于替换默认验证器中的默认错误消息。对于替换使用 kwargs message="u error message for view invalid this field"
简单示例
URLInd = BooleanField(u'Do you have a website?',validators=[URL(message="I want MY MESSAGE ERROR THIS FIELD")])
我有一个包含多个字段的 WTF 表单,我只想在不刷新页面的情况下根据对先前字段的响应显示某些字段。例如,假设我有一个字段:
URLInd = BooleanField(u'Do you have a website?',validators=[DataRequired())
如果选中,我想显示:
URL = TextField(u'Please enter your web address',validators=[DataRequired(), URL()])
所以 "URLInd" 可以在初始页面加载时显示,但我只想在 URLInd == True 时显示 "URL"。
HTML:
<form class="form form-horizontal" method="post" role="form" enctype=multipart/form-data action>
{{ form.hidden_tag() }}
{{ wtf.form_errors(form, hiddens="only") }}
{{ wtf.form_field(form.URLInd) }}
{{ wtf.form_field(form.URL) }}
<button type="submit" class="btn btn-primary btn-lg btn-block">Submit</button>
</form>
根据我的研究,我怀疑我需要使用 Javascript 和 AJAX,但我没有使用这两者的经验,而且我无法应用我提供的任何示例我发现了这个问题。预先感谢您的帮助。
字段有 arg message
用于替换默认验证器中的默认错误消息。对于替换使用 kwargs message="u error message for view invalid this field"
简单示例
URLInd = BooleanField(u'Do you have a website?',validators=[URL(message="I want MY MESSAGE ERROR THIS FIELD")])