我设置了我的route.rb,就像这样:
devise_scope :user do
get "/login" => "devise/sessions#new"
end
现在我可以输入localhost:3000 / login并输入sign_in。
但是如果我进入localhost:3000 / users / sign_in仍然有效......如何禁用它?
答案 0 :(得分:1)
来自设计documentation:
请注意,您可以跳过所有会话路线并仅定义您自己的路线 使用如下跳过选项:
devise_for :users, :skip => [:sessions]
as :user do
get 'signin' => 'devise/sessions#new', :as => :new_user_session
post 'signin' => 'devise/sessions#create', :as => :user_session
delete 'signout' => 'devise/sessions#destroy', :as => :destroy_user_session
end
这样:authenticate_user!和其他助手将重定向 用户使用您定义的正确自定义页面。