Flask17 Flask_Script插件的使用
1 什么是Flask_Script
可以对flask应用做一些统一的操作
flask_script官网:点击前往
2 安装flask_script
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Flask-Script
3 如何使用flask_script编程
2.1 从flask_script模块中导入相关的类
from flask_script import Manager, Command
2.2 获取一个flask应用的实例
2.2.1 从外部导入的方法
from get_app import app
2.2.2 自己创建的方法
from flask import Flask
app = Flask(__name__)
2.3 创建一个Manager是咧
注意:创建Manager实例时需要用到Flask对象
manager = Manager(app)
2.4 创建自己的命令(有三种方式)
2.4.1 继承Command父类的编程步骤
class Hello(Command):
def run(self): # 必须实现run方法
print("Hello World.")
将创建的方法添加到Manager对象中去
manager.add_command('hello', Hello())
manager.run({
'hello': Hello()
})
上面的代码可以这样写在run里面
运行manager.py文件并在后面添加 hello 就会执行刚刚创建的命令
python3 manager.py hello
from flask_script import Manager, Command from flask import Flask
app = Flask(__name__) manager = Manager(app) # 实例化Manager class Hello(Command):
def run(self): # 必须实现run方法
print("Hello World. Helo Boy.")
manager.add_command('hello', Hello()) # 将命令添加到Manager对象中 if __name__ == "__main__":
manager.run()
manager.py
2.4.2 利用@manager.command注解实现(不带参数)
from flask_script import Manager, Command from get_app import app manager = Manager(app) @manager.command
def hello():
print("Hello Warrior.") if __name__ == "__main__":
manager.run()
manager.py
运行manager.py文件并在后面添加 hello 就会执行刚刚创建的命令
python3 manager.py hello
2.4.3 利用@manager.option('-n', '--name', help='Your name')注解实现(带参数)
from flask_script import Manager, Command from get_app import app manager = Manager(app) @manager.option('-n', '--name', help='Your name')
def hello(name):
print("hello", name) if __name__ == "__main__":
manager.run()
manager.py
运行manager.py文件并在后面添加 hello 就会执行刚刚创建的命令, 可以在后面跟参数,如果不跟参数就为None
python3 manager.py hello --name=warrior
或者
python3 manager.py hello -n=warrior
3 利用命令启动Flask项目
manager.add_command('start', Server(host='0.0.0.0', port=5555))
解释:Server() 对应着一个继承了Comman的类,而且其内部实现了run() 方法
注意:需要从flask_script中导入Server
from flask_script import Manager, Command, Server from get_app import app manager = Manager(app) manager.add_command('start', Server(host='0.0.0.0', port=5555)) if __name__ == "__main__":
manager.run()
manager.py
执行 python3 manager.py start 就会自动启动Flask项目,而且会监听所有的IP, 端口号是5555
最新文章
- PHP引用(&;)使用详解
- nodejs 提示‘xxx’ 不是内部或外部命令解决方法
- MyEclipse项目中的包按层次显示
- VS 自定义新建文件模板方法
- java Color
- jQuery.access源码分析
- PL/SQL连接oracle数据库
- 自定义Edit控件控制输入范围
- JavaSE学习总结第13天_API常用对象3
- JDK动态代理机制
- 编码规范系列(二):Eclipse Checkstyle配置
- 关于利用input的file属性在页面添加图片的问题
- webpack基本用法
- HTML5外包注意事项-开发HTML5游戏的九大坑与解决方法剖析
- 20172328《程序设计与数据结构》实验三 敏捷开发与XP实践报告
- 本地创建 Git 仓库并关联 Phabricator
- Luogu4173 残缺的字符串 FFT
- 关于node.js的进程管理
- linux下的各个目录(待填)
- Scala_模式匹配
热门文章
- UVALive - 7045 Last Defence 【数学】
- Elatsicsearch分片和副本相关知识
- 第七篇、os、sys、random、time、datetime、logging
- [java]final关键字、finally关键字与finalize()方法
- HDU2612 -暑假集训-搜索进阶N
- EntityFramework 学习 一 Entity Framework 查询设计
- App开发流程之创建项目和工程基本配置
- Luogu P1377 [TJOI2011]树的序:离线nlogn建二叉搜索树
- 通过request获取ID地址的方法
- PL/SQL Developer 的 SQL 编辑窗口显示行号