Hey abbiamo una classe di libreria (lib/Mixpanel) che chiama lavoro ritardato come segue:Rails Delayed Job & Libreria di classi
class Mixpanel
attr_accessor :options
attr_accessor :event
def track!()
..
dj = send_later :access_api # also tried with self.send_later
..
end
def access_api
..
end
Il problema è che quando si corre lavori rake: il lavoro: si ottiene la seguente errore:
undefined method `access_api' for #<YAML::Object:0x24681b8>
Qualsiasi idea del perché?
Sembra che il lavoro in ritardo non conosca la classe della libreria in modo che diventi solo un YAML :: Object, mi spiace non so come si possa caricare la classe della libreria. – Corey
Ho notato che questo problema esiste con tutto ciò che non è un modello 'ActiveRecord'. Il mio PORO è in 'app/models' e normalmente è caricato automaticamente da Rails. 'delayed_job' sembra avere un problema con esso, a meno che non utilizzi la soluzione di inizializzazione descritta di seguito da Jonathan. –