Ciao, ho un problema particolare. Io uso un callback after_commit per inviare notifiche, ma sembra che il callback non sia attivato. Semplificato la situazione si presenta così:Rails non attiva il mio callback after_commit
class Message < ActiveRecord::Base
after_commit :do_something
def do_something
raise 'Doing something'
end
end
Poi mi aspettavo di vedere il rilancio quando apro la console e creare un messaggio. Ma non succede nulla. Inoltre le rotaie non si lamentano nemmeno se elimino completamente il metodo 'do_qualcosa'. Si noti che questo non è un test con fixture transazionali. Vedo persino il record commesso nel db. La mia versione di rotaie è 3.0.9. Grazie per l'aiuto, soprattutto se è buono :-)
Modifica: ho appreso in seguito che la richiamata DID viene attivata quando ho distribuito il codice su una macchina diversa. Quindi deve essere qualcosa con il mio setup. Comunque apprezzerei la tua opinione su cosa potrebbe causare questo.
Modifica2: dai commenti.
- Il DB è MySQL in modo che le transazioni siano presenti.
- Specificare l'azione del callback non ha aiutato (: on =>: create).
- Ho bisogno after_commit e nessun altro richiamata
Come si sta creando il modello nella console – felipeclopes
ho provato tramite una fabbrica e anche attraverso un salvataggio e salvare ! call – Renra
Come ho capito tutti dovrebbero attivare il callback. Ho anche provato da una console di produzione. – Renra