Python 如何在web.py中按列返回sqlite3的表
我正在练习web.py。在web服务器中,我有一个sqlite3数据库,我希望通过http访问返回它的记录。如何在browerse中的每条记录之间添加换行符 以下是我在浏览器中获得的内容,我想在每个rocord之间添加换行符,如:Python 如何在web.py中按列返回sqlite3的表,python,sqlite,web.py,Python,Sqlite,Web.py,我正在练习web.py。在web服务器中,我有一个sqlite3数据库,我希望通过http访问返回它的记录。如何在browerse中的每条记录之间添加换行符 以下是我在浏览器中获得的内容,我想在每个rocord之间添加换行符,如: [('2017-02-23 10:19:13', 1.68, 1.01), ('2017-02-23 10:19:51', 1.03, 1.9), ('2017-02-23 10:21:41', 1.97, 1.6), ('2017-02
[('2017-02-23 10:19:13', 1.68, 1.01),
('2017-02-23 10:19:51', 1.03, 1.9),
('2017-02-23 10:21:41', 1.97, 1.6),
('2017-02-23 10:22:39', 1.57, 1.75),
我的代码如下:
import web
import sqlite3
render = web.template.render('templates/')
urls = (
'/', 'index'
)
class index:
def GET(self):
conn = sqlite3.connect('customer-01.db')
cursor = conn.execute("SELECT * from datasource")
return cursor.fetchall()
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
return cursor.fetchall返回文本,在浏览器中显示文本时没有任何特殊格式-这就是为什么它是一条长线
要使其在浏览器中看起来更好,请返回HTML。然后您可以在每行之间添加,或者将其格式化为表格,或者
您可以使用web.py模板,但由于您试图保持其简单性,因此只需显式设置内容类型并添加一些HTML即可
更新您的GET:
def GET(self):
conn = sqlite3.connect('customer-01.db')
cursor = conn.execute("SELECT * from datasource")
web.header('Content-Type', 'text/html') # you're sending HTML rather than text
ret = [str(x) for x in cursor.fetchall()] # Convert each row to string
return '<br/>'.join(ret) # return single string, with <br/> between rows
嗨,乔,欢迎来到Stack Overflow!为了帮助人们回答您的问题,您能为我们提供一个解决方案吗?这样我们就可以了解您的尝试,并就最佳行动方案向您提供建议。干杯