Tôi muốn tắt hoàn toàn các tuyến đường/người dùng/sign_in để nhận và đăng.Rails - Devise, làm thế nào tôi có thể vô hiệu hóa một số tuyến đường mặc định?
tôi đã có thể thành công ghi đè lên chúng bằng cách sử dụng sau đây:
devise_for :users do
get "/admin" => "devise/sessions#new", :as => :new_user_session
post "/admin" => "devise/sessions#create", :as => :user_session
end
Và khi tôi chạy tuyến cào tôi thấy như sau:
new_user_session GET /admin(.:format) {:controller=>"devise/sessions", :action=>"new"}
user_session POST /admin(.:format) {:controller=>"devise/sessions", :action=>"create"}
new_user_session GET /users/sign_in(.:format) {:action=>"new", :controller=>"devise/sessions"}
POST /users/sign_in(.:format) {:action=>"create", :controller=>"devise/sessions"}
tôi có thể truy cập đăng nhập từ/admin như cũng như từ/users/sign_in. Nhưng tôi muốn loại bỏ hoàn toàn hai hàng cuối cùng, có thể không?
Tôi đã thử một số kết hợp khác nhau từ documentation mà dường như làm điều đó nhưng nó cũng ghi đè một số kết hợp hữu ích, như mật khẩu/mới và mật khẩu/chỉnh sửa tuyến đường.
Cảm ơn bạn rất nhiều vì đã trả lời câu hỏi của tôi! Tôi cũng đã thêm xóa "/ logout" => "devise/sessions # destroy",: as =>: destroy_user_session cho đăng xuất và chức năng chính xác là những gì tôi muốn. :) – JohnDel
Dường như không hoạt động nữa. 'devise_for' có vẻ như nó bỏ qua khối. –