rails登录后跳转到登录前的路径

# 重定向到存储的地址或默认地址
def redirect_back_or(default)
    redirect_to(session[:forwarding_url] || default)
    session.delete(:forwarding_url)
end
# 存储以后需要的地址
def store_location
    session[:forwarding_url] = request.url if request.get?
end
#判断是否登录,否,则存储需要的地址
def signed_in_user
    unless signed_in?
      store_location
      redirect_to signin_url, notice: "请登录."
    end
  end
def create#session.create
    user = User.find_by(email: params[:session][:email].downcase)
    if user && user.authenticate(params[:session][:password])
    # 登录成功,跳转到存储地址或默认地址
      sign_in user
      redirect_back_or root_path
    else# 登录失败返回登录界面,提示错误信息
      redirect_to signin_url, notice: "用户名或密码不对."
    end
  end

 

posted @ 2015-03-18 09:02  zhangsai  阅读(309)  评论(0编辑  收藏  举报