delayed_jobs不在delayed_jobs表中创建行

时间:2014-08-14 07:33:04

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

在may rails应用程序中我想使用延迟的工作。我安装了延迟工作如下。

宝石文件中的

 gem 'delayed_job_active_record', '0.4.3'

然后在控制台

 rails generate delayed_job:active_record

 rake db:create

它在数据库中创建了delayed_jobs表。

我开始了

 rake jobs:work

然后我在控制器中添加了以下代码:

 Task.handle_asynchronously :in_the_future, :run_at => Proc.new { 5.minutes.from_now }

此处任务是型号名称。

在模型task.rb中我写了

 def in_the_future
   self.update_attiributes(:status=> "updated")
 end

运行控制器方法后,它不会在delayed_jobs表中创建任何记录。如果我做错了,请纠正我。

1 个答案:

答案 0 :(得分:4)

您可以将控制器代码更改为

Task.delay(:run_at => Proc.new { 5.minutes.from_now }).in_the_future