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
时间: 2024-08-25 12:41:26

rails登录后跳转到登录前的路径的相关文章

Laravel 登录后跳转回登录前浏览的页面

一.经过 Auth 中间件检查后跳转至登录页面 也就是没有通过 auth 中间件的认证检查,被 auth 中间件拦截后跳转至登录页面.这种情况下,Laravel 默认会在用户登录成功后自动跳转回登录前浏览的页面.auth 中间件是怎么做到的? 打开 auth 中间件文件: // vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php protected function authenticate(array

CAS—注销登录后跳转到登录页

CAS单点登出后,默认会跳到它自带的注销界面(这里建立在已部署好CAS-Server的基础上,详情见上篇文章),如下图: 对应的jsp如下目录: 1.修改cas-servlet.xml配置 打开[apache-tomcat-6.0.33\webapps\cas\WEB-INF]目录下的cas-servlet.xml 修改cas-servlet.xml文件的bean的id为logoutController下的p:followServiceRedirects属性为"true",如下图: 2

登录后跳转回当前页

<?php // 登录后跳转回当前页 Mage::getSingleton('customer/session')->setBeforeAuthUrl(Mage::helper('core/url')->getCurrentUrl()); ?> <div>参加团购需要首先登录哦.点击 <a href="/customer/account/login/" class="light-blue">马上登录</a>

登录成功后跳转回登录前的页面,实现思路

首先,我的网站都是动态跳转的. 整体思路: 1.拦截:在拦截到用于session过期,或用户未登录的情况下,将登录前requestUrl,post请求的参数组成paramMap存放到session中 String requestURL = request.getRequestURL().toString(); Map<Integer, String> paramMap = new HashMap<Integer, String>(); Enumeration e = req.get

MVC 访问IFrame页面Session过期后跳转到登录页面

Web端开发时,用户登录后往往会通过Session来保存用户信息,Session存放在服务器,当用户长时间不操作的时候,我们会希望服务器保存的Session过期,这个时候,因为Session中的用户信息取不到了,就需要用户重新登录,重新保存Session. Asp.net MVC提供了过滤器,让我们可以很方便的控制访问Action时要处理的事情,针对Session过期后页面跳转,我们可以封装一下Controller的OnActionExecuting方法作为基Controller,如下: pub

vue实现登录后跳转到之前的页面

在开发中我们经常遇到这样的需求,需要用户直接点击一个链接进入到一个页面,用户点击后链接后会触发401拦截返回登录界面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢? 先说一下我们需要用到的几个API: 1.router.currentRoute:当前的路由信息对象,我们可以通过router.currentRoute.fullPath获得解析后的 URL,包含查询参数和 hash 的完整路径,如果要访问的页面的路由有命名(name)的话,可以通过router.currentRoute.

WordPress设置退出登录后跳转到指定页面

做网站大家都很重视用户体验,今天给大家大家带来一个WordPress改善用户体验的方法,用户退出登录直接跳转到首页或者让它跳转到我指定的位置,下面是具体的操作方法: 1.找到您目前在用的主题文件,鼎峰网络阿D这里的是wp-content/themes/twentyfourteen/,其中themes是主题文件夹,鼎峰网络阿D之前的wordpress文件结构也有提到,twentyfourteen是目前启用的主题,找到functions.php文件: 2.在functions.php文件中添加以下代

Django里自定义用户登陆及登陆后跳转到登陆前页面的实现

因为下一步要和公司的UM帐号作集成,所以分离出登陆模块,及实现其基本功能是必不可少的. 登陆倒容易,但要实现在登陆后,跳转到登陆前的网页,且显示用户的登陆状态,花了点时间查找代码, 测试了五六种方式,终于搞定.连语法都OK啦.. login.html: {% extends "xxxx/index.html" %} {% load staticfiles %} {% block title %}用户登陆 {% endblock %} {% block heading %} <h1

怎么实现登录之后跳转到登录之前的页面?SpringMVC+Freemarker

项目中,想实现一个功能. 直接访问某个需要登录的url,比如/addArticle,可能会跳转到登录页面login.html. 登录成功之后,自动跳转到/addArticle这个登录前的页面,继续登录之前的操作. 思路很简单: 登录拦截器,获得backurl,    String backUrl=request.getRequestURI(); //返回到原来的页面,而不是系统配置的首页,更友好 response.sendRedirect(loginUrl + "?backurl="