У меня есть приложение Rails 4 App Order Model, где пользователь заполняет форму для необходимых данных для расчета цен и т. Д. Я хочу, чтобы они вам предлагается выполнить вход (с драгоценным камнем DEVISE) в конце шага_3 и перенаправляться в раздел оплаты, но они могут хранить свои данные формы из модели заказа, которую пользователь предварительно заполнил, эти данные являются данными формы заказа, прежде чем они подписанного вКак заставить пользователя войти в систему после заполнения формы, сохраняя данные формы с помощью рельсов
Основные вопросы:.
Перенаправление их после знака в середине пути через процесс, используя изобрести
Сохранение данных формы и связывая его с текущим пользователем непосредственно перед маршрутизируется в раздел оплаты
секция Order.find_by. Что я могу найти?
фона: Rails 4 PostgreSQL Разрабатывают Gem
class OrdersController < ApplicationController
before_action :authenticate_user!, :except => [:step_1,:process_step1,:step_2a,:process_step_2a, :step_2b, :step_2c, :step_3]
def step_1
@order = Order.find_by id: session[:order_id]
if @order.nil?
@order=Order.new
@order.save!
end
end
def process_step1
order = Order.find_by id: session[:order_id]
order.update_attributes(order_params)
if (order.building == 'Residential') || (order.building == 'Commercial')
redirect_to step_2a_path
elsif (order.building == 'Commercial + Parking') || (order.building == 'Residential + Parking')
redirect_to step_2b_path
else
redirect_to step_2c_path
end
end
def step_2a
@order = Order.find_by id: params[:session_id]
end
def process_step_2a
order= Order.find_by status: 'cart'
# , user_id: current_user.id
order.update_attributes(order_params)
if order.save
redirect_to step_3_path
end
end
def step_2b
@order= Order.find_by status:'cart'
# , user_id: current_user.id
end
def process_step_2b
order= Order.find_by status: 'cart'
# , user_id: current_user.id
order.update_attributes(order_params)
if order.save
redirect_to step_3_path
end
end
def step_2c
@order= Order.find_by status:'cart'
# , user_id: current_user.id
end
def process_step_2c
order= Order.find_by status: 'cart'
order.update_attributes(order_params)
if order.save
redirect_to step_3_path
end
end
def step_3
@order= Order.find_by status:'cart'
# , user_id: current_user.id
end
def process_step_3
order= Order.find_by status: 'cart', user_id: current_user.id
order.update_attributes(order_params)
if order.save
redirect_to payment_path
end
end
def payment
@order= Order.find_by status:'cart', user_id: current_user.id
end