如何在帮助器中调用任务?

时间:2013-06-12 08:31:31

标签: routing symfony-1.4 task

我想在我的应用程序中创建一个按钮来调用任务。

如何在我的模板中使用link_to()来执行此操作?

routing.yml中,可以创建一个调用任务的路由吗?

1 个答案:

答案 0 :(得分:2)

无法从Web环境启动任务。任务的目标是在命令行中运行。你无法实现你想做的喜欢

你应该看一下软消息队列:

  • 对某个操作(例如一个链接),将一个项目添加到队列中
  • 每次将项目添加到队列时,它都会启动一个操作(例如,可以是任务)

在您的情况下,您的项目将告诉队列管理器启动特定任务。

ZeroMQ,Redis,BernardAMPQ等地区有很多不同的消息队列。

但您也可以使用MySQL数据库构建您自己的(例如):

  • 创建一个名为todo的数据库(带有id,标志,任务名称,参数字段)
  • 对某个操作(例如一个链接),在此表中添加一个项目(包含所有信息)
  • 创建一个todoTask,它将:
    • 从此表中提取项目
    • 将其标记为已处理
    • 并为每个项目启动行内所描述的任务(带参数等)