Flask-Scrip

介紹及安裝

Flask-Script是一個讓你的命令行支持自定義命令的工具,它爲Flask程序添加一個命令行解釋器。能夠讓咱們的程序從命令行直接執行相應的程序。
安裝python

pip install Flask-Scriptflask

用於在終端啓動項目

from flask import Flask
from flask_script import Manager

app = Flask(__name__)
manager = Manager(app)

if __name__ == '__main__':
    manager.run()

啓動項目session

python manage.py runserver -h 0.0.0.0 -p 8888app

用於在終端啓動應用中腳本

1.使用Command 類

from flask_script import Manager

app = Flask(__name__)
# configure your app

manager = Manager(app)

from flask_script import Command

class Hello(Command):
    "prints hello world"

    def run(self):
        print("hello world")
# 將命令添加到咱們的Manager實例中,就像上面建立的同樣:        
manager.add_command('hello', Hello())

if __name__ == "__main__":
    manager.run()

執行命令工具

python manage.py hello

能夠將Command以字典的形式將實例傳遞給manager.run()命令行

manager.run({'hello' : Hello()})

執行命令code

python manage.py

2.使用@command裝飾器

from flask import Flask
from flask_script import Manager

app = Flask(__name__)
# configure your app
manager = Manager(app)

@manager.command
def hello():
    "Just say hello"
    print("hello")
if __name__ == "__main__":
    manager.run()

執行命令server

python manage.py hello

3.使用@option裝飾器

from flask_script import Manager
from app.models import User
from app import db,create_app

myapp = create_app()

manager = Manager(myapp)

@manager.option('-u', '--username', help="指定用戶名")
def add_user(username):
    """添加用戶, 指定用戶名和密碼"""
    if username:
        u = User(name=username)
        db.session.add(u)
        db.session.commit()
        return  "添加用戶%s成功" %(u.name)
    else:
        return  "請指定用戶"

if __name__ == "__main__":
    manager.run()

執行命令ip

python manage.py add_user -u xiaoqi
添加用戶xiaoqi成功

能夠提早寫好一些命令,可經過命令行快速執行操做。好比上面的建立用戶操做。文檔

官方文檔:https://flask-script.readthedocs.io/en/latest/

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息