Я не знаю, какая именно у вас ошибка, но, вообще говоря, вот как вы должны использовать формы с flask-wtf
, при условии, что вы используете последнюю версию ( 0.14 ), как я:
from flask import Flask,render_template, request
from flask_wtf import FlaskForm
from wtforms import StringField,SubmitField
app=Flask(__name__)
class Infoform(FlaskForm):
breed = StringField('what breed are you')
submit=SubmitField('submit')
@app.route('/',methods=['GET','POST'])
def index():
breed = False
form = Infoform()
if form.validate_on_submit():
breed= form.breed.data
form.breed.data=''
return render_template('index.html',form=form,breed=breed)
if __name__=='__main__':
app.run(debug=True)
Обратите внимание, что во второй строке я импортирую FlaskForm
, а не Form
.И на уровне класса InfoForm
я наследую класс FlaskForm
.
Наконец, в соответствии с предложением по улучшению Python 8 ( PEP8 ), в котором говорится, что имякласс должен начинаться с заглавной буквы, я изменил ваш InfoForm
класс ... Поскольку читаемость имеет значение