python - 试图以 HTML 格式显示所有记录,但它仅在 HTML 中显示数据库中的最后一项
问题描述
此代码仅输出 Sqlite 表中的最终记录。它不会将表中的所有记录输出到 HTML 中。有什么建议么?
import sqlite3
from flask import Flask, render_template, redirect, request
app = Flask(__name__)
connection = sqlite3.connect('employee.db')
cur = connection.cursor()
cur.execute('SELECT * FROM employee;')
s = "<table style='border:2px solid black'>"
for row in cur:
s = s + "<tr>"
for x in row:
s = s + "<td>" + str(x) + "</td>"
s = s + "</tr>"
cur.close()
@app.route('/')
def main():
return "<html><body>" + s + "</body></html>"
if __name__ == "__main__":
app.run()
解决方案
for x in row
将第二个循环嵌套在循环中for row in cur
以确保它为每个循环运行row
这应该可以解决您的问题。
import sqlite3
from flask import Flask, render_template, redirect, request
app = Flask(__name__)
connection = sqlite3.connect('employee.db')
cur = connection.cursor()
cur.execute('SELECT * FROM employee;')
s = "<table style='border:2px solid black'>"
for row in cur:
s += "<tr>"
for x in row:
s += "<td>" + str(x) + "</td>"
s += "</tr>"
cur.close()
@app.route('/')
def main():
return "<html><body>" + s + "</body></html>"
if __name__ == "__main__":
app.run()
推荐阅读
- laravel - Laravel src/Controllers/StatisticsController.php 找不到路径
- css - 如何在 SASS 中生成动态变量
- android - 线程“主”java.lang.NoClassDefFoundError 中的异常:javax/xml/bind/annotation/XmlSchema EXCEPTION
- android - 将数据设置到启动此 nav_graph/fragment 的 nav_graph/fragment 的视图模型,而不知道是谁启动了此 nav_graph
- django - Django - 按自定义函数排序
- python - Python:实现__str__方法后保留对象的内存地址
- pandas - pandas 中的稀疏列:直接访问非空值的索引
- react-native - 使用 Context API 设置应用程序设置,而不直接依赖它
- java - 发现任务 ':app:processDebugGoogleServices' 的配置存在一些问题(类型 'GoogleServicesTask')
- database - 单独数据库微服务中的一对多关系