介绍及安装

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的更多相关文章

  1. flask+sqlite3+echarts2+ajax数据可视化

    前提: 准备Python + Flask+Sqlite3的平台环境(windows系统) 前面一节介绍flask怎么安装了,剩下sqlite3下载后解压,然后环境变量添加解压路径就行了 附加下载地址: ...

  2. flask+sqlite3+echarts2+ajax数据可视化报错:UnicodeDecodeError: 'utf8' codec can't decode byte解决方法

    flask+sqlite3+echarts2+ajax数据可视化报错: UnicodeDecodeError: 'utf8' codec can't decode byte 解决方法: 将 py文件和 ...

  3. Windows下快速安装Flask的一次经历

    前提: 1.已安装python版本(一般都是2.X) 2.已安装easy_install python安装,记得配置Python的环境变量,例如:我的直接在Path上加 G:\Python 验证安装P ...

  4. 使用Flask设计带认证token的RESTful API接口[翻译]

    上一篇文章, 使用python的Flask实现一个RESTful API服务器端  简单地演示了Flask实的现的api服务器,里面提到了因为无状态的原则,没有session cookies,如果访问 ...

  5. 使用python的Flask实现一个RESTful API服务器端[翻译]

    最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文将会使用python的Flask框架轻松实现一个RESTful的服务 ...

  6. python flask (一)

    from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World ...

  7. flask源码分析

    本flask源码分析不间断更新 而且我分析的源码全是我个人觉得是很beautiful的 1 flask-login 1.1 flask.ext.login.login_required(func),下 ...

  8. Python flask 基于 Flask 提供 RESTful Web 服务

    转载自 http://python.jobbole.com/87118/ 什么是 REST REST 全称是 Representational State Transfer,翻译成中文是『表现层状态转 ...

  9. Python flask @app.route

    转载自 http://python.jobbole.com/80956/ 下面是Flask主页给我们的第一个例子,我们现在就由它入手,深入理解“@app.route()”是如何工作的.         ...

  10. Flask 框架入门

    Flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 安装 Flask 依赖两个外部库, We ...

随机推荐

  1. vue.js(09)--v-for中的key

    v-for中key的使用注意事项 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  2. 关于同PC上存在多个版本的GeneXus

    如题 有的时候需要在不同的版本上开发  如我一般 有四个版本IDE 那么有的时候可能在安装的时候 提示安装失败 比如这样 这个时候你需要将安装好的GeneXus安装目录 全部备份一下 然后  从控制面 ...

  3. 机器学习-线性回归补充-R^

    线性回归算法在选自变量会遇到两个问题:一是去掉多重共线性干扰,二是选择最优自变量组合. 线性回归步骤 1.选择自变量 注意点 去掉多重共线性干扰,选择最优自变量组合.这里需要理解决定系数:R^.它是理 ...

  4. React(3) --react绑定属性

    react绑定属性 /* react绑定属性注意: class要换成className for要换成 htmlFor style: <div style={{"color": ...

  5. Zen Coding – 超快地写网页代码(注:已更名为Emmet)

    这篇博客能帮助快速上手这款插件,极大地提高开发效率废话不多说直接上例子 zen codeing的缩写规则 E 元素名 (div, p); 实例:(输入完<按快捷键ctrl+E>就会显示) ...

  6. 洛谷P4331[BOI2004] sequence

    博客复活? 这个题很模板啊.随便上个左偏树.之前第一遍写对了.然后今天翻出来又写了一遍发现了一个奇奇怪怪的问题. 对比如下 上面的是AC 下面的WA 真的是一个很蠢的问题...你TM堆顶都弹出来了,堆 ...

  7. Kafka初识

    1.概述 1.1.Apache Kafka是一个   分布式  流处理   平台: 2.Kafka适应于什么场景? 2.1.构造  实时  流数据管道,在  系统 或 应用之间  可靠地获取数据(相当 ...

  8. 【转】从phpMyAdmin批量导入Excel内容到MySQL(亲测非常简洁有效)

    今天做项目遇到需要用phpMyAdmin批量导入Excel内容到MySQL数据库.分析了我的踏坑经历并且总结一最便捷的一套导入数据的方法,非常实用简洁: 1.修改Excel表的数据,使得Excel中的 ...

  9. 【锁】synchronized的实现(偏向锁、轻量级锁、重量级锁)

    synchronized的三种应用方式 一. 修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁. 二. 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁. 三. ...

  10. vim编辑器的使用技巧——忽略字母大小写

    一忽略字母大小写临时生效 底行模式 底行模式下输入set  ic 注意ic是ignorecase的缩写 命令模式 命令模式进行关键字搜索 二忽略字母大小写永久生效 保存到配置文件里面,默认是没有此配置 ...