用flask开发个人博客(6)—— 为flask程序添加命令行解释器

来源:互联网 发布:液晶显示器测试软件 编辑:程序博客网 时间:2024/04/28 14:46

一 引入Manager

        使用flask的方便之处在于可以使用大量的扩展功能,如数据库和用户认证都是通过扩展功能实现。打算开启flask时支持命令行选项,我们需要引入flask-script扩展。

from flask_script import Managerapp=Flask(__name__)manager=Manager(app)...if __name__=='__main__':    manager.run()

        flask_script声明了一个Manager类,它以程序实例作为参数,传给构造函数。这个方法也常用与其他的扩展,其创造的对象可以在各个扩展中使用。

二 通过Manager启动服务器

        manager.run()封装了app.run()的功能,以使其支持启动时的命令行参数.通过在终端中输入下面的命令,来启动服务器。

python test.py runserver 

        这种启动方式,服务器默认在本机上,只接受来自服务器所在的计算机发起的链接。若需要同网中其他计算机的链接服务器,则需要加上--host 0.0.0.0 选项。

python test.py runserver --host 0.0.0.0

三 增加自定义命令

        使用Manager还可以增加自定义的命令:

@manager.commanddef print_str():    print 'hello world'
        上面,为manager实例增加了一个print_str的命令,我们在终端按照以下方式调用,即可打印出字符串:

hyman@hyman-VirtualBox:~/projects/flaskTs$ python test.py print_strhello world

Github位置:
https://github.com/HymanLiuTS/flaskTs

克隆本项目:
git clone git@github.com:HymanLiuTS/flaskTs.git
获取本文源代码:
git checkout FL06


0 0