我按照本教程构建了一个像应用程序一样的 dropbox Build-a-dropbox-like-file-sharing-site-with-ruby-on-rails
我是Ruby on Rails的新手,还在学习。根据教程,我使用了设计进行身份验证,但它有一个问题,即一旦登录就不能让我退出。我无法找到解决方案。
我用Google搜索并试图将其添加到routes.rb
中routes.rb
Dropbox::Application.routes.draw do
#me devise_for :users
devise_for :users do get '/users/sign_out' => 'devise/sessions#destroy' end
root :to => "home#index"
end
我无法解决这个问题。请帮忙。
答案 0 :(得分:0)
在路由中,您已定义' GET'它应该是'删除'
请将您的路线更改为devise_for :users
我认为退出的路线是DELETE方法。这意味着您的退出链接必须如下所示<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>.
您的不包含:method =&gt; :删除部分。
还请检查您的设备初始化程序文件。 应该定义
#config/initializers/devise.rb
config.sign_out_via = :delete
它会起作用
示例rails-devise,请克隆一下。
答案 1 :(得分:0)
这应该足够了:
devise_for :users
从您的错误中
Routing error for /users/Sign_out
我发现你使用的路线不正确,应该是
/users/sign_out
不
/users/Sign_out