我使用wtforms和flask登录创建登录表单。当我使用以下html代码运行该网站时,它将无法正常工作,但是,当我将文本字段替换为{{wtf.quickform(form)}}时,它可以正常运行,因此我的语法可能是错误
这是html:
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block title %}Login{% endblock %}
{% block content %}
<div id="login">
<div class="container">
<div id="login-row" class="row justify-content-center align-items-center">
<div id="login-column" class="col-md-6">
<div id="login-box" class="col-md-12">
<form id="login-form" class="form" action="{{ url_for('login') }}" method="post">
<h3 class="text-left text-info">Login</h3>
<div id="register-link" class="text-left">
<p>Not registered?<a href="/signup" class="text-info"> Sign up</a></p>
</div>
<div class="form-group">
<label for="username" class="text-info">Username:</label><br>
{{ form.username(class_="form-control") }}
</div>
<div class="form-group">
<label for="password" class="text-info">Password:</label><br>
{{ form.password(class_="form-control") }}
</div>
<div class="form-group">
<label for="remember-me" class="text-info"><span>Remember me</span> <span><input id="remember-me" name="remember-me" type="checkbox"></span></label><br>
{{ form.submit(class_="btn btn-info btn-md")}}
</div>
这是必要的python代码:
class LoginForm(FlaskForm):
username = TextField('Username', validators=[DataRequired()])
password = PasswordField('Password', validators=[DataRequired()])
submit = SubmitField('Sign In')
还有一个路由函数,其中包含无法添加的form.validate_on_submit,但它工作正常,我认为问题出在这两个代码块中