我有一个带有模板的烧瓶应用程序,其中我有一个使用jinja语法的循环。问题是我不知道为什么行[5]没有改变而其他人工作正常。 <p>{{ row[5] }}</p>
可能不会在嵌套在td标记内的div中循环。发送到页面的数据应循环4次。
{{row [5]}}
这不断给我第一个循环的值。代码如下:
{% for row in data %}
<tr>
<td>{{ row[2] }}</td>
<td>{{ row[1] }}</td>
<td>{{ row[3] }}</td>
<td>
<button type="button" class="btn btn-info btn-sm" data-toggle="modal" data-target="#myModal">Backup</button>
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Modal Header</h4>
</div>
<div class="modal-body">
<p>{{ row[5] }}</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
</td>
<td>Backup</td>
</tr>
{% endfor %}
即使这里的数据无关紧要。有人问,我会把它放在这里。数据类似于:
data=((1,2,3,4,5,6,7,8),(1,2,3,4,5,6,7,8))
这是我渲染模板的方式:
@app.route('/home')
def home(methods=['GET']):
cursor = conn.cursor()
cursor.execute("SELECT * from hosts_custom;")
data = cursor.fetchall()
print data
return render_template('index.html',data=data)
事实证明它是id,目标始终保持不变。因此,当我点击按钮时,它会一直盯着myModal目标。谢谢大家的帮助!
我使用的解决方案非常简单。
<button type="button" class="btn btn-info btn-sm" data-toggle="modal" data-target="#myModal{{ loop.index }}">Backup</button>
<div id="myModal{{ loop.index }}" class="modal fade" role="dialog">