在 Flask 中构建带有动态元素的 Bootstrap 表
Posted
技术标签:
【中文标题】在 Flask 中构建带有动态元素的 Bootstrap 表【英文标题】:Building a Bootstrap table with dynamic elements in Flask 【发布时间】:2015-12-22 19:26:50 【问题描述】:我正在与 Flask 合作,根据从 SQLAlchemy 数据库中获取的人员列表构建 Bootstrap 表。但是,我想放在表格中的信息出现在表格上方。
这是有问题的代码:
<!DOCTYPE html>
% extends "base.html" %
% block page_content %
<div class="page-header">
<h1>componentes familiares</h1>
<table class="table">
<thead>
<th>name</th>
<th>age</th>
<th>option</th>
</thead>
<tbody>
% for person in people %
<tr> person.name </tr>
<tr> person.age </tr>
<tr> person.option </tr>
% endblock %
</tbody>
</table>
% endblock %
(这已经是瘦身版了,因为我一直在拿东西看它是否能解决问题。)
但是假设我的数据库中有两个人,Alice 和 Bob。 Alice 30 岁,Bob 40 岁,Alice 的选项是 1,Bob 的选项是 2。这就是我得到的:
信息在那里,但它呈现在表格上方。在它的正下方是表格标题和一个空表格行。
链接
我在 Flask here 中发现了另一个关于 Bootstrap 表的问题,但它并没有真正解决我的问题。我的数据完全按照我的意愿传递到 html 页面,我只想把它放在一个表格中。
我还找到了Flask-Table,这是一个用 Python 构建表格然后使用它的扩展。它可能最终成为一个解决方案,但我仍然看不出我的代码有什么问题。
在Bootstrap docs 中也没有找到任何有用的东西。
非常感谢任何帮助!
【问题讨论】:
【参考方案1】:您缺少一些 <tr>
和 <td>
标签:
<table class="table">
<thead>
<tr>
<th>name</th>
<th>age</th>
<th>option</th>
<tr>
</thead>
<tbody>
% for person in people %
<tr>
<td> person.name </td>
<td> person.age </td>
<td> person.option </td>
</tr>
% endfor %
</tbody>
</table>
您的目标是为每个用户创建一个表行 (<tr>
),并为其每个属性创建一些表数据 (<td>
)。你还有一个% endblock %
,你应该有一个% endfor %
。
【讨论】:
非常感谢!我现在不在电脑旁,但我明天会修复我的代码,我相信它会工作的。以上是关于在 Flask 中构建带有动态元素的 Bootstrap 表的主要内容,如果未能解决你的问题,请参考以下文章