2015-09-01 16 views
7

Chcę wysłać żądanie do oprogramowania zewnętrznego, gdy jestem pewien, że model został zapisany.after_create wywołany po nieudanym zapisaniu?

1) Jak ustalić kolejność wywoływania after_create?

2) Czy wywoływany jest na nieudanym utworzeniu?

szyn dokumentacja API mówi:

Informacja zwrotna jest to, że nadal owinięte w transakcji wokół uratować.

3) Czy to znaczy, że wymaga save odnieść sukces przed after_save nazywa czy to znaczy, że raz save nazywa after_save zawsze jest wyzwalany?

Odpowiedz

4

Jak bym dowiedzieć się w jakiej kolejności after_create nazywa i czy to utrzymuje się przez nieudany utworzyć?

można odczytać kolejność wywołania zwrotne tutaj: http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html

Jeśli transakcja się nie powiedzie, wydarzenie save (i create/update zdarzenia) zwracają false. Spowoduje to zatrzymanie wszystkich późniejszych wywołań zwrotnych. Tak więc, after_save, after_create/after_update wszystkie nigdy nie działają na nieudanym save (lub na nieudanym create/update).

... a transakcja zostanie wycofana, aby baza danych nie była faktycznie aktualizowana.

Powiązane problemy