Flask第十七篇 Flask-Scrip

是的,熟悉Django的同窗是否還記得Django的啓動命令呢? python manager.py runserver 大概是這樣對吧python

其實Flask也能夠作到,基於 Flask-Script 就能夠了 - 可是你仍是得有一個項目就點擊下載flask

 

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 9527

5.高級操做 - 自定製腳本命令

 5.1.方式一 : @manager.commandapp

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
View Code
python manager.py DragonFire 666

 

5.2.方式二 : @manager.opation("-短指令","--長指令",dest="變量名")ide

 

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
View Code
python manager.py talk -n 趙麗穎 -s 漂亮
python manager.py talk --name DragonFire --say NB-Class

相關文章
相關標籤/搜索