【发布时间】:2020-02-18 21:57:30
【问题描述】:
对于上下文,我正在尝试创建一个 flask-wtf 表单。我已经这样做了,并且显示正确:
class LoginForm(FlaskForm):
username = StringField('Username', validators=[DataRequired()])
password = PasswordField('Password', validators=[DataRequired()])
submit = SubmitField('Sign In')
@APP.route('/')
def index():
return render_template('login.html', form=LoginForm())
@APP.route('/login', methods=['POST', 'GET'])
def login():
print(request.method, request.get_json())
return redirect('/') # temporary
这是html:
{% block content %}
<h1>Sign In</h1>
<form action="/login" method="post" enctype='application/json'>
{{ form.hidden_tag() }}
<p>
{{ form.username.label }}<br>
{{ form.username(size=32) }}
</p>
<p>
{{ form.password.label }}<br>
{{ form.password(size=32) }}
</p>
<p>{{ form.submit() }}</p>
</form>
{% endblock %}
但是,当我输入任何内容并单击提交时,从login() 打印的内容是POST None。我不明白为什么没有发送数据。作为强制它为 json 的尝试,我添加了 enctype='application/json' 并且之前或之后都没有。
我错过了什么?
【问题讨论】:
标签: python flask flask-wtforms