python - Flask 表单未在提交时发布
问题描述
我正在尝试修改引导模板的联系表单以使用我创建的 Flask 表单。但是,在填写表单并提交时,我在后端没有看到任何 POST 请求。
我尝试修改表单,例如更改输入的名称,这似乎解决了其他问题。仔细检查烧瓶表单示例并将其发布的端点更改为仅查看 POST 请求。两者都没有解决问题。
烧瓶代码:
page = Blueprint('page', __name__, template_folder='templates')
@page.route('/', methods=['GET', 'POST'])
def home():
form = ContactForm()
if form.validate_on_submit():
print("FORM POSTED!")
return "FORM POSTED"
return render_template("page/index.html", form=form)
烧瓶形式:
from flask_wtf import Form
from wtforms import TextAreaField
from wtforms_components import EmailField
from wtforms.validators import DataRequired, Length
class ContactForm(Form):
email = EmailField('email',
[DataRequired(), Length(3, 254)])
message = TextAreaField('message',
[DataRequired(), Length(1, 8192)])
HTML 表单模板:
<form id="contactForm" name="contactform" method="post" action="{{ url_for('page.home') }}">
{{ form.hidden_tag() }}
{{ form.csrf_token }}
<div class="row">
<div class="col-md-6 offset-md-3">
<div class="form-group">
{{ form.email.label }}
{{ form.email(class_='form-control', placeholder="Your Email") }}
<p class="help-block text-danger"></p>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6 offset-md-3">
<div class="form-group">
{{ form.message.label }}
{{ form.message(class_='form-control', placeholder="Your Message") }}
<p class="help-block text-danger"></p>
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="col-lg-12 text-center">
<div id="success"></div>
<button id="sendMessageButton" class="btn btn-primary btn-xl text-uppercase" type="submit">Send Message</button>
</div>
</div>
</form>
我希望这需要填写电子邮件和文本区域并提交给烧瓶应用程序。然而什么都没有发生。从未发送过任何 POST。
解决方案
推荐阅读
- android - Camera2 设置预览(View)并获取预览回调
- eclipse - 在 Eclipse Workspace 中更改 Maven 本地存储库
- windows - 无法启动 Apache 服务:拒绝访问
- java - 如何修复 JAVA 错误 NullPointerException(使用 jdbc)
- python - 计算 TensorFlow 中每个张量行的平均值
- maven - 有时有效的 Maven 存储库
- mongodb - 将 mongodb 与 elasticsearch scala 环境同步
- ruby-on-rails - 用于销毁的语义嵌套形式
- android - TextView 没有与其他视图内联
- c - 我不明白这句话的逻辑“cur = prev->next;” 在 deleteall(key) 函数中