StateMachine :: InvalidTransition (Невозможно перейти в состояние через: следующее от: delivery (Причина (ы): переход остановлен)) Ruby on Rails - Spree - PullRequest
0 голосов
/ 27 сентября 2018

Я использую Spree 1.3 стабильный.Я пытаюсь настроить Authorize.net.Я получаю следующую ошибку, когда состояние будет меняться с: доставка на: оплата.

StateMachine::InvalidTransition (Cannot transition state via :next from :delivery (Reason(s): Transition halted)):

(в пользовательском интерфейсе, когда пользователь вводит данные кредитной карты и нажимает на кнопку "Отправить", запускаетсяошибка.)

Вот трассировка полного стека:

StateMachine::InvalidTransition (Cannot transition state via :next from :delivery (Reason(s): Transition halted)):
  state_machine (1.1.2) lib/state_machine/event.rb:241:in `block in add_actions'
  state_machine (1.1.2) lib/state_machine/machine.rb:753:in `call'
  state_machine (1.1.2) lib/state_machine/machine.rb:753:in `block (2 levels) in define_helper'
  spree_core (1.3.3) app/controllers/spree/admin/payments_controller.rb:41:in `create'
  actionpack (3.2.21) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
  actionpack (3.2.21) lib/abstract_controller/base.rb:167:in `process_action'
  actionpack (3.2.21) lib/action_controller/metal/rendering.rb:10:in `process_action'
  actionpack (3.2.21) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
  activesupport (3.2.21) lib/active_support/callbacks.rb:535:in `_run__3422946342895104680__process_action__1477463726742080828__callbacks'
  activesupport (3.2.21) lib/active_support/callbacks.rb:405:in `__run_callback'
  activesupport (3.2.21) lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
  activesupport (3.2.21) lib/active_support/callbacks.rb:81:in `run_callbacks'
  actionpack (3.2.21) lib/abstract_controller/callbacks.rb:17:in `process_action'
  actionpack (3.2.21) lib/action_controller/metal/rescue.rb:29:in `process_action'
  actionpack (3.2.21) lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
  activesupport (3.2.21) lib/active_support/notifications.rb:123:in `block in instrument'

Я настроил обратный вызов Spree::Order.state_machine.before_transition to: :payment, который, кажется, работает.Я подозреваю, что если это что-то настроить на веб-сайте Authorize.net или это действительно проблема в моей конфигурации authorize.net в моем приложении.

Любой совет, где я должен посмотреть?

Спасибо.

...