其实这个标题有点大了,只是记录以一下flask中command的一个使用方式,具体用法还需要看相关文档。
之前的项目中需要加一个定时任务所以在flask中写了个任务执行。
首先需要在manage.py文件中注册这个方法:
from app.app import create_app
from app.settings import get_config
from flask_script import Manager
from app.commands import TaskCommand
CONFIG = get_config()
app = create_app(CONFIG)
manager = Manager(app)
manager.add_command('task', TaskCommand)
if __name__ == "__main__":
manager.run()
其中的TaskCommand是在/commands/__init__,中定义好的:
from flask_script import Manager, Command
TaskCommand = Manager()
from .task import update_status, update_result
TaskCommand.add_command('update_status', Command(update_status))
TaskCommand.add_command('update_result', Command(update_result))
测试时根据你自己命名的任务和函数名,比如我要运行update_status,则执行:
python manage run task update_status