在登录时设计显示错误'无效的电子邮件或密码'

时间:2011-02-06 05:45:44

标签: ruby-on-rails devise

我正在使用Rails 3和Devise,并设置了我的routes.rb文件,如下所示:

  devise_for :users,
  :path_names => { :sign_in => 'login', :sign_out => 'logout'}

  devise_scope :user do
    get '/login' => 'devise/sessions#create'
    get '/logout' => 'devise/sessions#destroy'
  end

  resources :users

当我去/登录时,我收到了flash消息:

Signed out successfully.
Invalid email or password.

第一条消息是通知,我并不担心,但第二条消息是警报,因为用户尚未登录并且已经抱怨没有密码,因此很烦人。

是否有一种简单的方法可以抑制此消息?我可能设置错误吗?

我正在使用用户名字段登录而不是电子邮件。

我已将我的devise.rb改为

  config.authentication_keys = [ :username ]

1 个答案:

答案 0 :(得分:3)

当我以新头回头看时,这是一个容易犯的错误:

get '/login' => 'devise/sessions#create'

应该是

get '/login' => 'devise/sessions#new'