Rails resque: Enregistrement introuvable lorsque la variable passant du contrôleur travailleur
-
27-10-2019 - |
Question
J'ai un contrôleur très simple:
def create
@poem = Poem.new(params[:poem])
@poem.prose = @poem.content
@poem.save
Resque.enqueue(PoemWork, @poem.id)
....
et un travailleur très simple:
class PoemWork
@queue = :poem_queue
def self.perform(poem_id)
@poem = Poem.find(poem_id)
txt = @poem.content
#do stuff here
@poem.save
end
end
Et je continue à me « Impossible de trouver le Poème avec id = 53 » ou lissée. comme ça ...
I Tried passage chaîne juste, tout entier etc .. mais aussi finit par ActiveRecord :: RecordNotFound
ce qui peut se tromper?
La solution
Le problème était que le travailleur commence avant que l'objet se fait créé.
Nous avons dû installer la pierre précieuse que les redémarrages emplois ont échoué.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow