Pra*_*tra 3 python mysql webpage client-server flask
我有一个网页(使用HTML和jQuery构建),它显示MySQL数据库中的数据.我正在使用Flask将HTML与我的数据库连接起来.但是,我的数据库每15分钟更新一次(使用单独的Python脚本).目前,我停止烧瓶服务器,更新数据库并重新启动Flask以更新网页.我的问题如下:
有没有办法在后台更新MySQL数据库而不必停止烧录服务器?我读到了关于AJAX和CRON的概念,但是我无法理解如何异步使用它们.
注意:我是Web应用程序的新手,这是我的第一个项目,涉及连接客户端和服务器端.任何帮助将不胜感激.
谢谢
你最有可能做这样的事情:
from flask import Flask, render_template
from yourMySqlLibrary import connect_to_mysql
conn = connect_to_mysql()
# This is only executed when you start the script
data = conn.execute("SELECT * FROM MySemiRegularlyUpdatedTable")
app = Flask(__name__)
@app.route("/")
def view_data():
return render_template("view_data.html", data=data)
if __name__ == "__main__":
app.run()
Run Code Online (Sandbox Code Playgroud)
如果是这种情况,那么您的解决方案就是将您的连接和查询调用移动到控制器中,以便每次点击页面时都会重新查询数据库:
@app.route("/")
def view_data():
# Removed from above and placed here
# The connection is made to the database for each request
conn = connect_to_mysql()
# This is only executed on every request
data = conn.execute("SELECT * FROM MySemiRegularlyUpdatedTable")
return render_template("view_data.html", data=data)
Run Code Online (Sandbox Code Playgroud)
这样,您的视图将在数据执行时更新 - 您不必重新启动服务器只是为了获取数据更改.
| 归档时间: |
|
| 查看次数: |
3262 次 |
| 最近记录: |