我有一个模板(test.html)如下:
{% extends 'base.html' %}
{% from "_formhelpers.html" import render_field %}
{% block content %}
<div class="container">
<div class="row">
<div class="span6 offset3">
<form class="form-horizontal" action="/create_user/" method="post">
{{ form.csrf_token }}
<dl>
{{ render_field(form.name) }}
{{ render_field(form.members) }}
<!--<div class="control-group">
<label class="control-label">
{{ form.task.label }}
</label>
<div class='controls'>
{{ form.task}}
{% if form.task.errors %}
<ul class="text-error">
{% for error in form.task.errors %}
<li>{{ error }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
</div>-->
</dl>
</form>
</div>
</div>
</div>
{% endblock %}
当使用 Flask 的 render_template("test.html", form=form) 渲染这个模板时。我收到以下错误“UndefinedError: 'tickapp.forms.TeamForm object' has no attribute 'task'”。如您所见,我在模板(整体)中注释掉了“form.task”,并且模型和表单中也没有这样的字段。
我想知道为什么 jinja2 正在考虑带注释的 html 内容。我信任评论(!)并在这个问题上花了几个小时。最后,删除所有评论并开始工作。在jinja2工作的任何人都遇到过这个问题?你知道为什么会这样吗?