Мне нужен процесс оформления заказа без шага доставки и оплаты
(работает в магазине, который принимает наложенным платежом, поэтому мне нужно только
шаг адреса.)
Я использую Шпрее 0.10.2
Вещи, которые я пробовал:
В site_extension.rb
добавлен следующий конечный автомат
Checkout.state_machines[:state] = StateMachine::Machine.new(Checkout, :initial => 'address') do
after_transition :to => 'complete', :do => :complete_order
before_transition :to => 'complete', :do => :process_payment
event :next do
transition :to => 'complete', :from => 'address'
end
end
Ненужные шаги удаляются (хотя бы визуально), но когда я отправляю
адрес он выдает следующую ошибку.
IndexError in
CheckoutsController обновление #
"оплата" является недействительным именем
Глядя на след и пару похожих ошибок позже, я решил
слепо переопределить два метода из checkouts_controller.rb в
site_extension.rb ничего не делать (так как они имеют дело с оплатой я
предположим)
def clear_payments_if_in_payment_state
end
def object_params
end
При этом возникают ошибки проверки на всех полях доставки и
Платежный адрес.
Я смутно понимаю, что мне нужно переопределить пару методов
из checkouts_controller.rb. Если это понятие верно, то каковы
эти методы.