Flask-Script
Flask-Script 从字面意思上来看就是 Flask 的脚本
是的,熟悉Django的同学是否还记得Django的启动命令呢? python manager.py runserver 大概是这样对吧
1.安装 Flask-Script
pip install Flask-Script
2.将 Flask-Script 加入到 Flask 项目中
import MyApp # 导入 Flask-Script 中的 Manager from flask_script import Manager app = MyApp.create_app() # 让app支持 Manager manager = Manager(app) if __name__ == '__main__': #app.run() # 替换原有的app.run(),然后大功告成了 manager.run() MyApp/manager.py
3.使用命令启动 Flask 项目
python manager.py runserver
4.启动项目并更改配置参数(监听IP地址,监听端口)
python manager.py runserver -h 0.0.0.0 -p 8888
5.高级操作 - 自定制脚本命令
5.1.方式一 : @manager.command
import MyApp # 导入 Flask-Script 中的 Manager from flask_script import Manager app = MyApp.create_app() # 让app支持 Manager manager = Manager(app) # type:Manager @manager.command def runflask(arg): print(arg) if __name__ == '__main__': #app.run() # 替换原有的app.run(),然后大功告成了 manager.run() MyApp/manager.py
python manager.py runflask 666
5.2.方式二 : @manager.opation("-短指令","--长指令",dest="变量名")
import MyApp # 导入 Flask-Script 中的 Manager from flask_script import Manager app = MyApp.create_app() # 让app支持 Manager manager = Manager(app) # type:Manager @manager.command def DragonFire(arg): print(arg) @manager.option("-n","--name",dest="name") @manager.option("-s","--say",dest="say") def talk(name,say): print(f"{name}你可真{say}") if __name__ == '__main__': #app.run() # 替换原有的app.run(),然后大功告成了 manager.run() MyApp/manager.py
python manager.py talk -n 和顺-s 帅哥
python manager.py talk --name 和顺--say NB-Class