【问题标题】:Django : HTML Table with iterative lists valuesDjango:具有迭代列表值的 HTML 表
【发布时间】:2015-09-16 11:24:12
【问题描述】:

我正在使用 Django 框架并尝试根据我在列表中的值构建一个表:

列表:[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [3, 3, 3, 3]] 表 应该如下图:

我使用的代码是:

  html = "<html><body><br>" \
           "<table border=1 ><thead> <tr><th>result 1</th><th>result 2</th><th>result 3</th><th>result 4</th></tr><thead>{% for item in matrix %} {% for secitem in item %} <tr> <td> {{secitem[0]}} </td>  <td> {{secitem[1]}} </td><td> {{secitem[2]}} </td><td> {{secitem[3]}} </td>  </tr>    {% endfor %}{% endfor %} " \
           "</table></body></html>"

我无法获得包含所需行的确切表格。非常感谢任何帮助。![在此处输入图片描述][1]

【问题讨论】:

  • 您的示例表不可见。
  • 我无法上传图片。但是,它应该是一个包含列表值的 4X4 表。

标签: python html django


【解决方案1】:

您正在遍历列表中的列表,但您正在尝试访问列表中列表中的项目的索引。

删除“secitem”循环并访问item 的索引或简单地迭代item

{% for row in matrix %}
<tr>
    {% for value in row %}
        <td>{{ value }}</td>
    {% endfor %}
</tr>
{% endfor %}

【讨论】:

  • 这段代码有问题吗?我仍然无法在表格中得到结果: html = "
    " \ "{% for row in matrix %}{% for value in row %}{% endfor %}{% endfor %} " \ "
    result 1 结果 2 result 3 result 4 result 5
    {{ value }}
    "
  • 或者,如果你想要标题:&lt;table border=1&gt;&lt;tr&gt;&lt;th&gt;Col1&lt;/th&gt;&lt;th&gt;Col2&lt;/th&gt;&lt;th&gt;Col3&lt;/th&gt;&lt;th&gt;Col4&lt;/th&gt;&lt;/tr&gt;建议代码&lt;/table&gt;
  • @GoutamAd 希望这是正确的。您仍然遇到的输出和问题是什么?注意:如果存在&lt;thead&gt;,则应在主行周围添加&lt;tbody&gt;
  • @Yuji'Tomita'Tomita 我已经从代码中删除了 。我得到的输出是这样的:s15.postimg.org/vfjpc7597/image.png
  • @GoutamAd 对我来说似乎您需要编译您的模板。在视图中渲染 django 模板应该是一个完全独立的问题,我认为您已经完成了。你这样做了吗?
猜你喜欢
相关资源
最近更新 更多
热门标签