django 向HTML中特定列的单元格添加值

mklgxw1f  于 2023-01-06  发布在  Go
关注(0)|答案(2)|浏览(125)

我正在用HTML为Django项目创建一个非常基本的表格。我从这里得到了一些帮助,学习如何将Django应用中的列表传递到HTML中,并为我的值生成行。这次我的问题是:如何将列表的第二列、第三列或任何特定列作为目标?例如,假设我有一个值列表,并希望将所有值添加到表的第3列。下面是我尝试使用的代码,我希望将{{ name }}个值添加到第2列,但它一直将单元格添加到第1列

<html>
   <body>   
           <table border="1" cellpadding = "5" cellspacing="5"> 
               <tr>
                   <th> IDs </th>
                   <th> Names </th>
                   <th> Heights </th>
                 </tr>
               {% for id in myIDs %}
                   <tr> 
                      <td>{{ id }}</td>
                      
                   </tr>
               {% endfor %}
               <tr>
                   {% for name in myNames %}
                   <td>
                       <tr> 
                           <td>{{ name }}</td>      
                        </tr>
                   </td>    
                       {% endfor %}
               </tr>
               </table>           
   </body>
</html>
zte4gxcn

zte4gxcn1#

要组合元组中的数据,可以使用zip和for循环
示例:

MyIds = [1, 2, 3]
MyNames = [4, 5, 6]
MyHeights = [7, 8, 9]
data = []

for i, m, h in zip(MyIds, MyNames, MyHeights):
    data.append((i, m, h))

最后,数据会是这样的-

[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

希望能有所帮助

s4chpxco

s4chpxco2#

为每个id、name和height创建一个元组。
然后创建一个空列表并将元组追加到数据中。
然后将数据作为上下文发送

temp = (id, name, height)
data = []
data.append(temp)
return render(request, 'index.html', {data: data})

现在在html页面中

{% for id, name, height in data %}
<tr>
    <td>{{id}}</td>
    <td>{{name}}</td>
    <td>{{height}}</td>
</tr>
{% endfor %}

相关问题