【发布时间】:2015-04-09 02:12:40
【问题描述】:
所以我是 Python 新手,目前正在尝试使用 Flask。我已经阅读了许多关于如何使用烧瓶配置与简单数据库的连接但没有任何成功的文档和博客。你们能帮帮我吗?
我现在不想要任何花哨的东西,只是为了让连接正常工作。下面是我想要开始工作的简单测试查询的代码。
这样的结果是一个普通的 500 Internal Server Error。
app = Flask(__name__)
from flask import Flask
import sqlite3
from flask import g
@app.before_request
def before_request():
g.db = sqlite3.connect("database.db")
@app.teardown_request
def teardown_request(exception):
if hasattr(g, 'db'):
g.db.close()
@app.route('/')
def hello_world():
g.db.execute("INSERT INTO test VALUES 'TestValue'")
g.db.commit()
if __name__ == '__main__':
app.run()
【问题讨论】:
-
500 错误会导致控制台回溯,你能分享一下吗?您的
database.db数据库实际上有 一个test表吗?您还使用了相对路径,因此database.db将在当前工作目录中打开。这可能不是您所期望的。 -
您实际上并没有从您的视图函数返回任何数据 - 如果您 - 1. 在您的
g.db.commit()和 2. 将app.run()更改为app.run(debug=True)之后添加return 'Hello World'会发生什么?跨度>
标签: python database sqlite flask