В моих Rails-приложениях я пытаюсь выполнить только команду Stripe Charge, ЕСЛИ ошибка Stripe не существует.И я хочу иметь возможность проверить ошибку Stripe.
charge = Stripe::Charge.create(
:amount => amount_in_cents,
:customer => stripe_customer,
:description => "my application",
)
Должно быть что-то вроде:
unless Stripe.errors.exists? do
charge = Stripe::Charge.create(
:amount => amount_in_cents,
:customer => stripe_customer,
:description => "my application",
)
end
И чтобы быть уверенным, что мой код работает, я пытаюсь puts
Ошибка Полосы, если она существует.Является ли Ошибка Полосы объектом, который я могу puts
?
Например:
if Stripe.error.exists?
puts Stripe.error
end
Попытка увидеть выходные данные с помощью команд puts
как в моей модели, так и в моейфайл тестирования, например, так:
Чтобы преднамеренно создать ошибку:
StripeMock.prepare_card_error(:card_declined)
Я пытаюсь puts
это (но ни одно из следующих действий не работает):
puts "Stripe Card Error: #{Stripe::CardError}"
begin
rescue Stripe::CardError => e
body = e.json_body
err = body[:error]
puts err.exists?
puts err
end
puts err.exists?
puts err
Когда я пытаюсь что-то вроде:
error = Stripe::CardError
if error
rescue Stripe::CardError => e
end
, это недопустимо, и также не if Stripe.error
или if Stripe::CardError
или if Stripe::CardError.exists?
.
Должна быть некоторая ошибка полосы object
что мы можем применить логику к?!?
Любая помощь по puts
осмотру / проверке ошибки нашивки будет принята, спасибо.