首页 > 其他 > 详细

Flask-Scrip

时间:2019-10-18 14:58:19      阅读:52      评论:0      收藏:0      [点我收藏+]

介绍及安装

Flask-Script是一个让你的命令行支持自定义命令的工具,它为Flask程序添加一个命令行解释器。可以让我们的程序从命令行直接执行相应的程序。
安装

pip install Flask-Script

用于在终端启动项目

from flask import Flask
from flask_script import Manager

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

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

启动项目

python manage.py runserver -h 0.0.0.0 -p 8888

用于在终端启动应用中脚本

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()})

执行命令

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()

执行命令

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()

执行命令

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

可以提前写好一些命令,可通过命令行快速执行操作。比如上面的创建用户操作。

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

Flask-Scrip

原文:https://www.cnblogs.com/liuweida/p/11697842.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!