如何在控制器内调用rake任务?

时间:2011-04-13 22:48:04

标签: ruby-on-rails ruby ruby-on-rails-3

如何在控制器中调用rake任务?

我需要延迟工作。

2 个答案:

答案 0 :(得分:5)

Rake::Task['task_name'].invoke(args)

但是,我建议不要这样做;这是不好的做法。如果您需要这种类型的功能,最好使用Cron,或者您可以将delayed_job与特定于您需要的自定义作业对象一起使用。我个人推荐后者,因为它在移动服务器时会减少痛苦。但是,delayed_job不是为了运行rake任务而构建的,它意味着对你创建的工作项进行排队。

答案 1 :(得分:0)

如果您需要Ruby中的cron作业我高度推荐whenever gem