2015-09-01 14 views
7

Desidero inviare una richiesta al software esterno ogni volta che sono sicuro che un modello è stato salvato.after_create chiamato dopo il salvataggio non riuscito?

1) Come determinare l'ordine in cui viene chiamato after_create?

2) viene chiamato in caso di creazione non riuscita?

La documentazione API ROTAIE dice:

Si noti che questo callback è ancora avvolto nella transazione intorno salvare.

3) Significa questo richiede la save per avere successo prima after_save si chiama o significa che una volta che si chiama saveafter_save è sempre attivato?

risposta

4

Come imparo in quale ordine after_create viene chiamato e se persiste attraverso una creazione non riuscita?

Potete leggere l'ordine di callback qui: http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html

Se l'operazione non riesce, l'evento save (e create/update eventi) ritornano false. Ciò interromperà l'esecuzione di tutte le callback successive. Quindi, after_save, after_create/after_update non vengono mai eseguiti su un errore save (o su un create/update danneggiato).

... e la transazione viene ripristinata in modo che il database non venga effettivamente aggiornato.

Problemi correlati