vid*_*unj 1 ruby-on-rails ruby-on-rails-4 ruby-on-rails-4.2 ruby-on-rails-5 ruby-on-rails-5.2
我有类似的Rails代码:
def charge_card
return charge_on_house if house_account?
assign_order_number
if credit_card?
begin
save! #==>here
charge = Stripe::Charge.create(
amount: (total.to_f * 100).ceil,
currency: 'usd',
customer: customer.stripe_id,
card: payment_method,
description:"Saint Germain Order: #{self.number}"
)
self.update(
payment_status: 'paid'
)
self.finish!
rescue Stripe::StripeError => e
self.update(
admin_comments: e.message,
)
self.decline!
ensure
notify_user
end
end
self.save!
end
Run Code Online (Sandbox Code Playgroud)
我想在保存时跳过验证!在第6行上,它正在引发错误消息。
小智 13
随着save!验证始终运行。如果它们中的任何一个失败,ActiveRecord::RecordInvalid就会引发。
尝试
.save(validate: false)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3656 次 |
| 最近记录: |