【发布时间】:2017-01-28 17:51:42
【问题描述】:
我尝试在视图中构建一个表并将其推送到该视图的模板中,因为在模板中执行此操作被证明是不可行的。我可以生成一个包含正确信息的字符串,但是当在浏览器中评估该模板变量时,有额外的引号和空格似乎使表格无法正确生成。
这是视图中的代码:
for unique_activity in uniquelist:
currentrow = '<tr data-activityID="' + str(unique_activity[0])+ '">' + '<td>' + str(unique_activity[1]) + '</td>'
for visit in visits_list:
for activity in visit.activity_set.all():
if activity.id == unique_activity[0]:
currentrow = currentrow + '<td>' + 'Reps:'+ str(activity.Repetitions) + '</td>'
else:
noact = True
if noact == True:
currentrow = currentrow + '<td></td>'
currentrow = currentrow + '</tr>\n'
tablerows.append(currentrow)
table = '<table>'
for row in tablerows:
table = table + row
table = table + '</table>'
table = str(table)
输出就是它所需要的......一个例子<table><tr data-activityID="1"><td>Initial Evaluation</td><td>Reps:None</td><td></td><td></td></tr> <tr data-activityID="3"><td>Cold Pack</td><td></td><td>Reps:None</td><td></td></tr> <tr data-activityID="6"><td>Recumbent Exercise Bike</td><td>Reps:12</td><td></td><td></td></tr> <tr data-activityID="7"><td>Leg Press</td><td></td><td></td></tr> <tr data-activityID="8"><td>Shoulder Ladder</td><td></td><td></td></tr> </table>
但是,这就是 DOM 中显示的内容,我输出到模板的所有内容只是 {{ table }},这就是输出到 DOM 信息中的内容,
只显示字符串,而不是表格。
这里是模板sn-p
<body>
{% if activity_list %}
<table>
{% for activity in activity_list %}
<tr>
<td>{{ activity.ActivityType.Name }}</td>
</tr>
{% endfor %}
</table>
{% endif %}
{{ table }}
</body>
我不知道发生了什么......
【问题讨论】:
-
您能否提供一个 sn-p 显示您在模板中包含
{{ table }}? -
完成,感谢您的评论。它是死香草,虽然......有一个差异。上面的表格。
标签: django django-templates django-views