1
在我的Rails應用程序我有這些模型如何讓同一數據庫行的多個ActiveRecord實例保持同步?
Order has_many OrderItem
OrderItem belongs_to Order
我的控制器有這個(僞)代碼:
#before_filter
@cart = Order.find(session[:cart_id])
#Action: update_item
item = OrderItem.find(params[:item_id]
#The order, item belongs to, is in fact @cart, i.e. @cart.id == item.order.id
item.price = 999.99
item.order.total += item.price
最後一行之後,@cart
對象仍然有舊total
值。
在Rails中解決這種情況的最佳方法是什麼?我想最簡單的方法是重新加載@cart
,但也許還有更像Rails的方式。