Для контекста я пытаюсь создать форму 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'
и ничего до или после.
Чего мне не хватает?