Flask作为一个简介的Web开发框架,有很多优点。开发者可以自由选择适合于自己项目的扩展,而不必受制于框架。
但是在开发的时候,难免使用一些别人造好的轮子,来提高开发效率。
Flask的扩展都暴露在flask.ext命名空间下,可以在环境中通过pip安装好相应额扩展,然后在程序中导入相应的包即可使用扩展。
Flask-Script是一个让你的命令行支持自定义命令的工具,它为Flask程序添加一个命令行解释器。可以让我们的程序从命令行直接执行相应的程序。
通过使用Flask-Script扩展,我们可以在Flask服务器启动的时候,通过命令行的方式传入参数。而不仅仅通过app.run()方法中传参,比如我们可以通过python hello.py runserver –host ip地址,告诉服务器在哪个网络接口监听来自客户端的连接。默认情况下,服务器只监听来自服务器所在计算机发起的连接,即localhost连接。
我们可以通过python hello.py runserver --help来查看参数。
Flask-Script插件为在Flask里编写额外的脚本提供了支持。包括了一个开发服务器,一个定制的Python命令行,用于执行初始化数据库、定时任务和其他属于web应用之外的命令行任务的脚本
安装
$ pip install flask-script
继承Flask-Script到falsk应用中
from flask import Flask
app = Flask(__name__)
"""使用flask-script启动项目"""
from flask_script import Manager
manager = Manager(app)
@app.route('/')
def index():
return 'hello world'
if __name__ == "__main__"
manager.run()
Flask-Script还可以为当前应用添加脚本命令
"""自定义flask_script终端命令"""
from flask_script import Command
class HelloCommand(Command):
"""命令的相关描述"""
def run(self):
with open("text.txt", "w") as f:
f.write("hello\r\nhello")
pass
print("这是执行了hello命令")
manage.add_command('hello', HelloCommand())
网友评论