Метод Form
класса is_submitted
Flask-WTF выглядит следующим образом:
def is_submitted(self):
"""
Checks if form has been submitted. The default case is if the HTTP
method is **PUT** or **POST**.
"""
return request and request.method in ("PUT", "POST")
И в его __init__
есть такой код, который обычно обеспечивает автоматическую загрузку форм-данных из запроса Flask:
if formdata is _Auto:
if self.is_submitted():
formdata = request.form
Так что понятно ... если вы отправляете форму через GET, вы не получаете ничего хорошего из автоматического поведения.Это понятно, потому что, если это запрос GET, неясно, была ли отправлена форма или вы просто загружали страницу.Это исключает любые проблемы с CSRF.
validate_on_submit
также не работает, так как он также опирается на is_submitted
Сам Flask также не разбирает поля GET в request.form
для вас.
В конечном итоге вы должны сделать что-то вроде:
form = MyForm(request.args, csrf_enabled=False)
if 'aws_id' in request.args and form.validate():
flash('Success')
aws_id = form.aws_id.data
(все предполагают, что ваш класс MyForm
наследуется от from flask.ext.wtf import Form
)