我正在尝试将数据放入flask的表中,但是出于某种原因,它会为每个字符创建一个新行,而不仅仅是将完整的字符串放入行中。
代码:
@app.route('/')
def logs():
output = ''
try:
conn = redis.StrictRedis(host='redis', port=6379)
for key in conn.scan_iter("log.g*"):
value = str(conn.get(key))
output += "str(key)+ '--' + value"
return render_template('view.html', data=output)
表格代码:
<table>
{% for row in data %}
<tr>
{% for value in row %}
<td>{{ value }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
答案 0 :(得分:1)
好吧,问题是您的输出/数据绝对是非结构化的-它只是一个大字符串。例如,您要创建一个列表:
output = []
conn = redis.StrictRedis(host='redis', port=6379)
for key in conn.scan_iter("log.g*"):
value = str(conn.get(key))
output.append("str(key)+ '--' + value")
return render_template('view.html', data=output)
(在您的代码中,return语句位于循环内,这意味着该循环将仅运行一次。
上面的代码将创建一个列表,然后创建一个模板:
<table>
{% for value in data %}
<tr>
<td>{{ value }}</td>
</tr>
{% endfor %}
</table>
会将每个列表成员打印到一个表格单元格中。除此之外,我们无法说出您想要在一个表行中拥有什么。