如何在Devise中更改重定向的默认行为

时间:2012-04-16 09:13:47

标签: ruby-on-rails devise

我的路线文件中有这个:

 devise_scope :user do
   get "/admin", :to => "users/sessions#new"
 end

我可以通过http://localhost:3000/admin访问唱歌。当我点击Sign in而不提供usernamepassword时,它会将我重定向到/users/sign_in路径,并显示有关缺少用户名和密码的错误消息。

我认为这是Devise的默认行为。但是在出错时,我希望被重定向到/admin而不是默认/users/sign_id。我怎样才能实现这种行为?

提前致谢。

1 个答案:

答案 0 :(得分:2)

  devise_for :users
  as :user do
    get 'admin' => 'devise/sessions#new', :as => :new_user_session
    post 'admin' => 'devise/sessions#create', :as => :user_session
  end