<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>ahuangokok (mm)</title>
    <link>https://ruby-china.org/ahuangokok</link>
    <description/>
    <language>en-us</language>
    <item>
      <title>登录弹窗和页面跳转问题</title>
      <description>&lt;p&gt;请教 rails 大神们一个问题：&lt;/p&gt;

&lt;p&gt;我需要实现的 2 种形式的登录：&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;弹窗提示登录&lt;/li&gt;
&lt;li&gt;页面跳转到登录页面&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;使用哪种登录形式的具体场景，用户层看
场景 1. 已经打开过的页面，用弹窗提示登录
    比如首页 (打开不需要登录) 上的任何链接，点击后，用弹窗提示登录
    比如非首页 (需要登录，登录成功后，因为在别的浏览器上登录过，session 更新了，当前浏览器需要重新登录的页面) 上的任何链接，点击后，用弹窗提示登录&lt;/p&gt;

&lt;p&gt;场景 2. 没有打开过的页面，用页面跳转
比如用户 A 发了一个 (需要登录才能打开的) 链接给用户 B，此时用户 B 打开这个链接，则页面跳转到登录页面提示用户先登录&lt;/p&gt;

&lt;p&gt;(场景 1 和场景 2 的需要提示用户登录的已有链接个数比较多，不适合单独对每个链接添加绑定事件，发送 ajax 到后台判断是否登录)&lt;/p&gt;

&lt;p&gt;当前实现的情况是没有弹窗，只有页面跳转到登录页面功能
在 application_controller 里面 before_action 前，设置了一个函数 need_login，在 need_login 里面去判断用户是否登录，如果没有则跳转到登录页面提示用户登录&lt;/p&gt;

&lt;p&gt;如何实现场景 1 的弹窗登录：
在 need_login 里面如何实现不去 redirect_to 跳转登录页面，而是弹窗显示登录？
如果 need_login 里面弹窗不可能实现，有没有其他实现思路？&lt;/p&gt;

&lt;p&gt;望各位前辈指点&lt;a href="/_" class="user-mention" title="@_"&gt;&lt;i&gt;@&lt;/i&gt;_&lt;/a&gt;@&lt;/p&gt;</description>
      <author>ahuangokok</author>
      <pubDate>Wed, 24 Feb 2016 16:09:36 +0800</pubDate>
      <link>https://ruby-china.org/topics/29083</link>
      <guid>https://ruby-china.org/topics/29083</guid>
    </item>
  </channel>
</rss>
