Tôi hơi bối rối về cách dự đoán định tuyến các yêu cầu của tôi, vì một lý do nào đó tôi không thể đi tới đường dẫn đăng nhập trong ứng dụng của mình bây giờ:Devise/Rails: Không có tuyến đường nào phù hợp với [GET] "/ users/sign_out"
ActionController::RoutingError (No route matches [GET] "https://stackoverflow.com/users/sign_out")
đây là những gì các tuyến đường của tôi liên quan đến mô hình tài khoản của tôi và lập mưu trông giống như:
devise_for :users, :controllers => {:registrations => "registrations"}
devise_scope :user do
get '/settings' => 'registrations#edit'
end
Would xác định phạm vi mà ngăn chặn các tuyến đường khác của tôi từ làm việc không?
Cập nhật
Tôi không nghĩ rằng đó là nghĩa vụ phải GET
yêu cầu, như liên kết của tôi trông giống như:
<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
Nó phải là một yêu cầu DELETE. Điều gì sẽ xảy ra nếu bạn chỉ cần rời khỏi devise_for: người dùng trong các tuyến đường của bạn? – gtr32x
JavaScript của bạn có gặp phải bất kỳ lỗi nào không? Nó thực sự là javascript không phô trương mà sẽ làm cho đây là một cuộc gọi http DELETE. –
Tệp cấu hình Devise của bạn có cho mục sau đây: '' 'config.sign_out_via''' –