【发布时间】:2018-05-31 16:49:13
【问题描述】:
我正在使用延迟作业在队列中添加一些电子邮件。我创建工作的方式如下:
EventNotifications.reminder("email", "name", id).deliver_later
其中 EventNotifications 是类,提醒是其中的方法。
这会在delayed_jobs 表中创建一个作业,但我想获取创建的作业的ID,因为我在delayed_jobs 表中有一些要更新的自定义字段。
运行上述行后我目前得到的是:
#<ActionMailer::DeliveryJob:0x00000005eb22d8 @arguments=["EventNotifications", "reminder", "deliver_now", "email", "name", 12], @job_id="6a549235-e8c1-407b-ac75-be8736559eaa", @queue_name="mailers">
这没有创建的作业的 ID。我如何获得该 ID?
【问题讨论】:
-
因为您使用的是 Rails 4.2 而还不是 Rails 5,所以您还不能使用
.provider_job_id。但是你可以查看these "hacks" -
你需要object id还是worker id?
-
@Jay 谢谢。我会调查你的答案
-
@NatarajaB 我需要对象 ID
标签: ruby-on-rails ruby-on-rails-4 delayed-job