Flask WT-форма не проверяется - PullRequest
0 голосов
/ 30 мая 2020

Моя Flask форма не проверяется. Все перепробовал. form.validate () не проверяет, хотя валидации нет. Есть ли выход из этой ситуации?

HTML Код

<body>
    <form method="POST" action = "{{ url_for('/generate') }}" novalidate>
        {{ form.csrf_token }}
        {{ form.hidden_tag() }} <br>
        {{ form.IsAssistantComm() }} <br>
        {{ form.Submit() }} <br>
    </form>
</body>

Flask Код

class GeneratorForm(FlaskForm):
    To = StringField('TO')
    IsAssistantComm = BooleanField('Is Assistant Commissioner?')
    Submit = SubmitField('Generate')

@app.route('/generate', methods=['GET', 'POST'])
def generate():
    form = GeneratorForm()
    if form.is_submitted():
        print("submitted")
    if form.validate():
        print("valid")
    if form.validate_on_submit():
        print("I am here")
        IsAssistantComm = form.IsAssistantComm.data
        return redirect('/')
    return render_template('main.html', form=form)

Программа Stacktrace:


 * Running on http://127.0.0.1:5090/ (Press CTRL+C to quit)
submitted
127.0.0.1 - - [30/May/2020 18:48:08] "POST /generate HTTP/1.1" 200 -
submitted
127.0.0.1 - - [30/May/2020 18:48:09] "POST /generate HTTP/1.1" 200 -

1 Ответ

0 голосов
/ 30 мая 2020

Я могу ошибаться здесь, но я думаю, что это может быть тот факт, что у вас нет проверки формы в вашем классе GenerateForm, сделайте что-то вроде этого:

class GeneratorForm(FlaskForm):
To = StringField('TO')
IsAssistantComm = BooleanField('Is Assistant Commissioner?', validators =[DataRequired()])
Submit = SubmitField('Generate')

Сообщите мне, исправит ли это : D

...