Flask-Script

Flask-Script的作用是可以通过命令行的形式来操作Flask。例如通过命令跑一个开发版本的服务器、设置数据库,定时任务等。要使用Flask-Script,可以通过pip install flask-script安装最新版本。首先看一个最简单的例子:

# manage.py

from flask_script import Manager
from your_app import app

manager = Manager(app)

@manager.command
def hello():
    print 'hello'

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

我们把脚本命令代码放在一个叫做manage.py文件中,然后在终端运行python manage.py hello命令,就可以看到输出hello了。

### 命令的添加方式:
1. 使用`manage.command`:这个方法是用来添加那些不需要传递参数的命令。示例代码如下:
    ```python
    manager = Manager(app)
    manager.add_command("db",db_manager)

    @manager.command
    def greet():
        print('你好')
    ```
2. `使用manage.option`:这个方法是用来添加那些需要传递参数的命令。有几个参数就需要写几个`option`。示例代码如下:
    ```python
    @manager.option("-u","--username",dest="username")
    @manager.option("-e","--email",dest="email")
    def add_user(username,email):
        user = BackendUser(username=username,email=email)
        db.session.add(user)
        db.session.commit()
    ```

3. 如果有一些命令是针对某个功能的。比如有一堆命令是针对ORM与表映射的,那么可以将这些命令单独放在一个文件中方便管理。也是使用`Manager`的对象来添加。然后到主manage文件中,通过`manager.add_command`来添加。示例代码如下:
db_script.py
```python
from flask_script import Manager

db_manager = Manager()

@db_manager.command
def init():
    print('迁移仓库创建完毕!')

@db_manager.command
def revision():
    print('迁移脚本生成成功!')

@db_manager.command
def upgrade():
    print('脚本映射到数据库成功!')
```

manage.py
```python
from db_script import db_manager

manager = Manager(app)
manager.add_command("db",db_manager)
```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值