登录后重定向到页面,在轨道上的红宝石中

时间:2013-10-05 01:42:03

标签: ruby-on-rails ruby

我正在尝试自动重定向用户,如果他或她有活动会话,则跳过登录页面 我当前的代码,它会提示用户另一个页面中有链接。我试着做redirect_to但是ruby不能用于那个方法。 有什么建议吗?

   <% if signed_in? %>
        <%= link_to "Users", 'users/show'  %>
   <% else %>        
    <%= form_for(:session, url: sessions_path) do |f| %>

      <%= f.label :email %>
      <%= f.text_field :email %>

      <%= f.label :password %>
      <%= f.password_field :password %>
      <br>

      <%= f.submit "Sign in", class: "btn btn-large btn-primary" %>
    <% end %>

1 个答案:

答案 0 :(得分:2)

在您的登录页面的控制器(可能是会话#new)中,您可以检查用户的会话,如

if current_usercookies[:session]

所以在new行动中

class SessionsController < ApplicationController
  def new
    redirect_to(root_url, alert: "already logged in") if current_user
  end
end