jinja2.exceptions.UndefinedError: 'form' is undefined even after passing 'form' in render_template
jinja2.exceptions.UndefinedError: 'form' is undefined even after passing 'form' in render_template
我制作了 WTForm 但无法加载。我在另一个项目中制作了类似的表格,而我刚刚复制了代码并相应地更改了它的详细信息。但是现在它显示 'form' undefined 错误。
发生错误的代码如下:
c = [('COMPANY','COMPANY'),('DISTRIBUTOR','DISTRIBUTOR'),('OUTLET','OUTLET')]
@app.route('/') # Decorator to create url routing, '/' = Home route
def index():
return render_template('index.html')
# User Registration
class Registration(Form):
reg_name = StringField('Name',[validators.Length(min=5,max=20), validators.DataRequired()])
reg_email = StringField('Email',[validators.DataRequired()])
reg_category = SelectField(label='Category', choices=c)
reg_password = PasswordField('Password',[validators.Length(min=5,max=15), validators.DataRequired(), validators.EqualTo('reg_confirm', message='Password do not match')])
reg_confirm = PasswordField('Confirm Password')
@app.route('/register', methods=['GET','POST'])
def register():
form = Registration(request.form)
if request.method == 'POST' and form.validate():
return render_template('index.html')
return render_template('index.html',form=form)
这是我的app.py脚本
<span class="col-md-6 float-right">
{% from 'includes/_formhelpers.html' import render_field %}
<form method="POST" action="">
<div class="form-group">{{render_field(form.reg_name, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_email, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_category, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_password, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_confirm, class_="form-control")}}</div>
<button type="submit" class="btn btn-primary">Register</button>
</form>
</span>
这是我尝试呈现表单的 index.html。
index.html
由视图函数 index
和 register
渲染。但是您忘记在视图 index
.
中传递 form
实例
我制作了 WTForm 但无法加载。我在另一个项目中制作了类似的表格,而我刚刚复制了代码并相应地更改了它的详细信息。但是现在它显示 'form' undefined 错误。 发生错误的代码如下:
c = [('COMPANY','COMPANY'),('DISTRIBUTOR','DISTRIBUTOR'),('OUTLET','OUTLET')]
@app.route('/') # Decorator to create url routing, '/' = Home route
def index():
return render_template('index.html')
# User Registration
class Registration(Form):
reg_name = StringField('Name',[validators.Length(min=5,max=20), validators.DataRequired()])
reg_email = StringField('Email',[validators.DataRequired()])
reg_category = SelectField(label='Category', choices=c)
reg_password = PasswordField('Password',[validators.Length(min=5,max=15), validators.DataRequired(), validators.EqualTo('reg_confirm', message='Password do not match')])
reg_confirm = PasswordField('Confirm Password')
@app.route('/register', methods=['GET','POST'])
def register():
form = Registration(request.form)
if request.method == 'POST' and form.validate():
return render_template('index.html')
return render_template('index.html',form=form)
这是我的app.py脚本
<span class="col-md-6 float-right">
{% from 'includes/_formhelpers.html' import render_field %}
<form method="POST" action="">
<div class="form-group">{{render_field(form.reg_name, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_email, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_category, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_password, class_="form-control")}}</div>
<div class="form-group">{{render_field(form.reg_confirm, class_="form-control")}}</div>
<button type="submit" class="btn btn-primary">Register</button>
</form>
</span>
这是我尝试呈现表单的 index.html。
index.html
由视图函数 index
和 register
渲染。但是您忘记在视图 index
.
form
实例