Yes*_*sha 5 arguments handler delayed-job ruby-on-rails-4
我有我可以使用命令获得的所有计划作业的列表
延迟::工作.all
每个作业都有一个处理程序字段(字符串),其中包含一个“-”分隔的参数。我想找到这个字符串的参数之一。一种方法显然是拆分字符串并提取值,但如果传递的参数列表发生任何更改,则此方法将失败。
下面给出的是我的工作对象之一的处理程序字符串:
"--- !ruby/object:ActiveJob::QueueAdapters::DelayedJobAdapter::JobWrapper\njob_data:\n job_class: ActionMailer::DeliveryJob\n job_id: 7ce42882-de24-439a-a52a-5681453f4213\n mailers\n参数:\n - 事件通知\n - 提醒_网络研讨会_事件_注册\n - 交付_现在\n - mail@gmail.com\n - yesha\n - 89\n 语言环境::en\n"
我想知道是否有任何方法,我可以在保存作业对象的同时向作业对象发送额外的参数,以便稍后使用,而不是在处理程序字符串中进行搜索。或者,如果不是这样,我可以获得处理程序的参数列表,而不是解析字符串并使用它。
请帮助!
instance_objectDelayed::Job 实例有一个方法,它返回反序列化的处理程序
job = Delayed::Job.first
handler = job.payload_object
Run Code Online (Sandbox Code Playgroud)
您可以根据需要使用您的处理程序,例如 handler.method
| 归档时间: |
|
| 查看次数: |
1582 次 |
| 最近记录: |