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
View Code

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
View Code
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

 

posted @ 2019-02-15 21:24  heshun  阅读(109)  评论(0编辑  收藏  举报