サイト内でポイントを使って、買い物ができる様な仕組みを作っています。
ユーザーの保持ポイント(@user.point)>=注文の値段(@order.price)の時に
orderアクションに飛ぶ仕組みにしてあるのですが、
下記のコードの場合、仮にポイントが足りなくても注文記録としてsaveされてしまいます。
トランザクションが必要になると思い、ずっと格闘しているのですがうまくいきません。。。
どなたかご教授願えませんでしょうか。よろしくお願いいたします。
ruby
1def create 2 @user = current_user 3 @order = Order.new(order_params) 4 @order.user = current_user 5 6 if @order.save && @user.point >= @order.price 7 8 order 9 10 else 11 redirect_to orders_error_path 12 end 13 end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/05 12:53
2018/09/07 02:22
2018/09/07 07:59