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/

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息