創建新用戶(在我的用戶模型中)我也想創建一個條帶客戶。這兩個行動只有在他們一起成功時才能完成(就像我不想要沒有用戶的客戶,反之亦然)。出於這個原因,我認爲將它們包裝在交易中是一個好主意。但是,我不能正確地做。我不相信我正在覆蓋創建方法。如果任何人有一個建議作爲一個更好的方式來做到這一點或我做錯了,它將不勝感激。謝謝!關於創建交易的導軌
def create
User.transaction do
super
create_stripe_customer(self)
end
end
def destroy
User.transaction do
super
delete_stripe_customer(self)
end
end
我一般使用事務塊作爲一個關鍵部分與數據庫鎖,以防止競爭條件。在你的情況下,如果你在用戶模型的''after_create'回調中調用'create_stripe_customer',會不會有問題?如果create_stripe_customer失敗,那麼您的用戶創建也應該回滾。 –
我在關注。有人必須對這個問題有一個很好的答案。 –
after_creation方法失敗會導致回滾?如果這樣做是完美的,並且會解決我的問題。我最初是這樣做的,但不確定失敗是否會導致回滾。 – soliman