7
只要我確定保存了模型,我就想向外部軟件發送請求。after_create在保存失敗後調用?
1)如何確定after_create被調用的順序?
2)它是否被調用失敗的創建?
鐵軌API文檔說:
注意,這個回調仍然包裹在交易周圍保存。
3)這是否意味着它需要save
成功after_save
之前被稱爲還是意味着,一旦save
被稱爲after_save
總是觸發?
只要我確定保存了模型,我就想向外部軟件發送請求。after_create在保存失敗後調用?
1)如何確定after_create被調用的順序?
2)它是否被調用失敗的創建?
鐵軌API文檔說:
注意,這個回調仍然包裹在交易周圍保存。
3)這是否意味着它需要save
成功after_save
之前被稱爲還是意味着,一旦save
被稱爲after_save
總是觸發?
我該如何學習after_create被調用的順序,以及如果 通過失敗的創建持續存在?
您可以在這裏閱讀回調的順序: http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html
如果交易失敗,則save
事件(create
/update
事件)返回false
。這將阻止所有後來的回調被運行。所以,after_save
,after_create
/after_update
都不會在失敗的save
(或失敗的create
/update
)上運行。
...並且事務回滾,所以數據庫沒有實際更新。