Flask自动刷新前端页面(方便调试)livereload

是不是每次调整模板文件,就要停止flask服务器,重启flask服务器,再去浏览器刷新页面?
有没有办法自动完成这3步呢?
安装livereload即可,
仅仅把app.run()
改为下面的例子就可以了。
注意:现在只支持python3.7,不支持3.8,并且尽限于修改模板文件,或者静态文件,改python代码,是会出错的。

#coding=utf-8
from flask import Flask, render_template
app = Flask(__name__)

app.config['DEBUG'] = True  # 如果没有这个配置, 感觉server.serve() 没什么作用,只是把默认的端口改为了550

@app.route('/')
def hello_world():
    return render_template('home.html')

if __name__ == '__main__':
    from livereload import Server

    server = Server(app.wsgi_app)
    server.watch('**/*.*')
    server.serve()
    # app.run()

templates/home.html

<html>
	<head>
    <meta charset="UTF-8">
	<title>index</title>
	</head>
	<body>
		<h1>Hello Login 哈哈哈</h1>
        <form method="POST" action="/login">
            <input type="text" name="user" />
            <input type="text" name="email" />
            <input type="text" name="pwd" />
            <input type="submit" value="提交" />
        </form>
	</body>
	<footer>
	</footer>
</html>

livereload 用法二 main.py


#coding=utf-8

from flask import Flask
from flask_script import Manager

app = Flask(__name__)

manager = Manager(app)

@app.route("/")
def upload():
    return "hello nihao"
#自动加载代码并推送显示到浏览器
@manager.command
def dev():
    from livereload import Server
    live_server = Server(app.wsgi_app)
    live_server.watch("**/*.*")
    live_server.serve(open_url=True)
if __name__ == "__main__":
    manager.run()

#python main.py dev
posted @   ty1539  阅读(1314)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示