自定义设计:会话控制器故障

时间:2014-06-27 19:15:53

标签: ruby-on-rails ruby-on-rails-4 devise

我的自定义Devise Sessions控制器不允许我登录。我在尝试自定义Devise控制器方面遇到了一些困难,但我无法弄清楚这里发生了什么

当我尝试登录时,页面(会话#new)只是重新渲染。如何让我的自定义控制器恢复全部功能?

# controllers/sessions_controller

class SessionsController < Devise::SessionsController
  skip_before_filter :store_last_attempted_location
  skip_after_filter  :store_last_successful_location

  def new
    super
  end

  def create
    super
  end

  def destroy
    super
  end
end

我的路线

#config/routes.rb

devise_for :users, :controllers => { :sessions => "sessions", :registrations => "registrations"  }

提前致谢。

1 个答案:

答案 0 :(得分:1)

如果在输入用户凭据后重新呈现登录页面,则表示凭据无效,导致重新呈现。但这应该会在重新呈现的页面上产生一条flash消息,因为Devise使用flash消息让应用程序用户知道登录是成功还是失败。

确保您在application.html.erb中显示Flash消息:

<% flash.each do |name, msg| %>
  <%= content_tag :div, msg %>
<% end %>