flask在同一个html页面上重写多个表单

时间:2014-03-25 16:38:54

标签: python flask wtforms flask-wtforms

我似乎无法在同一个html页面上使用我在WTforms上创建的2个表单获得正确的界限:

我定义了这两种形式

class Area(Form):
    title = TextField("Title", [validators.Required("Please enter an Area Title")])
    text = TextAreaField("Text (max 50 characters)",[validators.Required("Please enter a Push text"),validators.Length(max=50,message="Area text cannot be more than 50 characters")])

class Message(Form):
    Message_title = TextField("Title", [validators.Required("Please enter a Message Title")])
    Message_Date_and_Time = DateTimeField("Date and Time")

我希望在我的Dashboard.html页面中显示它们,我在其中嵌入代码以在2个不同的表单块中显示它们。

然后我尝试为我的dashboard.html创建视图函数,我调用/定义2个表单

@app.route('/dashboard.html')
def dashboard():
form = Area()
M_form = Message()
return render_template('dashboard.html',form= Area(),M_form = Message())

但是我得到了

    M_form = Message()    
NameError: global name 'Message' is not defined

我想它一定是某种基本的结构错误,也许我不能在我的视图中定义2个表单但是我怎样才能编写这个而不必求助于2个不同的html页面(每个表单一个)? / p>

1 个答案:

答案 0 :(得分:1)

在脚本顶部执行from forms import Area, Message