O atraso_jobs pode criar touched_jobs?
-
22-09-2019 - |
Pergunta
Estou tentando descobrir se sou capaz de usar delayed_job
. Eu precisaria da capacidade de adicionar empregos à fila dentro de um delayed_job
perform
método. Isso é possível?
Solução
De acordo com o meu teste, eles podem:
modelo Machine
:
class Machine < ActiveRecord::Base
def perform
Delayed::Job.enqueue Secondary.create!
end
end
modelo Secondary
:
class Secondary < ActiveRecord::Base
def perform
logger.info("Inside secondary's perform method (WIN)")
Proof.create!
end
end
Do console:
Atrasado :: job.enqueue Machine.create!
Isso acaba criando uma instância de Proof
e logs "dentro do secundário ...".
Outras dicas
Minha chamada de teste simples send_later
em um método invocado por send_later
indica que NÃO, isso não vai funcionar.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow