Domanda

Ho un controller molto semplice:

def create
  @poem = Poem.new(params[:poem])
  @poem.prose = @poem.content
   @poem.save
   Resque.enqueue(PoemWork, @poem.id)
 ....

e un lavoratore molto semplice:

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

E continuo a ricevere "Impossibile trovare poesia con id= 53" o smth.così ...

Ho provato a passare solo una stringa, solo un numero intero ecc .. ma termina anche con ActiveRecord :: RecordNotFound

cosa può esserci di sbagliato?

È stato utile?

Soluzione

Quindi il problema era che il worker inizia prima che l'oggetto venga effettivamente creato.

Ho dovuto installare la gemma che riavvia i lavori non riusciti.

ha scritto il post a riguardo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top