当用户将产品添加到购物车时,他并不一定要登录。但是当他进入创建的购物车并点击“Checkout”时,我会检查他是否已登录:
<%=
link_to_if(current_user.nil?, "Checkout", new_user_session_path) do
link_to( "Checkout", new_order_path, method: :get)
end
%>
因此,如果没有登录,我会重定向到new_user_session_path。问题是登录后他被重定向到index_path。我希望他被重定向回购物车。登录相同。
我正在使用Devise,所以我应该生成Devise控制器并从那里开始执行吗?应该怎么做?
注意:我正在使用当前购物车的模块:
module CurrentCart
private
def set_cart
@cart = Cart.find(session[:cart_id])
rescue ActiveRecord::RecordNotFound
@cart = Cart.create
session[:cart_id] = @cart.id
end
end
答案 0 :(得分:0)
我认为此代码可以帮助您:
class ApplicationController < ActionController::Base
def after_sign_in_path_for(resource)
#place your route here
end
end