Flask-SQLAlchemy的扩展之Flask-Script的使用
1.Flask-Script:
pip install Flask-Script
Flask-Script是一个让你的命令行支持自定义命令的工具,它为Flask程序添加一个命令行解释器。可以让我们的程序从命令行直接执行相应的程序。
我们可以通过python manage.py runserver –h 0.0.0.0 -p 8081 向django一样启动flask服务,告诉服务器在哪个网络接口监听来自客户端的连接。
from flask import Flask app = Flask(__name__) """使用flask-script启动项目""" from flask_script import Manager manager = Manager(app) @app.route('/') def index(): return 'hello world' if __name__ == "__main__"
#app.run()替换了
manager.run()
.高级操作 - 自定制脚本命令
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 DragonFire(arg):
print(arg)
if __name__ == '__main__':
#app.run()
# 替换原有的app.run(),然后大功告成了
manager.run()
MyApp/manager.py
python manager.py DragonFire 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 DragonFire --say NB-Class

浙公网安备 33010602011771号