Разработка: Почему не работает моя ссылка для выхода из системы?

проблема: в двух словах, когда я пытаюсь установить ссылку для выхода в моем приложении он не работает. Вот столько контекста, сколько я могу придумать здесь (если вы хотите что-нибудь еще, ткните меня, пожалуйста) ...

У меня есть это в представлении haml:

= link_to("Logout", destroy_user_session_path, :method => :delete)

Он генерирует это в представлении:

<a href="/users/sign_out" data-method="delete" rel="nofollow">Logout</a>

Я проверил, что в моем config / initializers / devise.rb я раскомментировал и исправил этот параметр:

config.sign_out_via = :delete

Я проверил следующий маршрут:

destroy_user_session DELETE /users/sign_out(.:format) {:action=>"destroy", :controller=>"devise/sessions"}

У меня также есть эта хитрость в моем routes.rb, и я подозреваю это относится к моей проблеме:

devise_for :users, :controllers => {:sessions => "devise/sessions", :registrations => "users"}
resources :users

Этот последний бит связан с тем, что я хочу управлять (редактировать, создавать и удалять) пользователей в моем собственном контроллере.

Я получаю следующее сообщение об ошибке:

ActiveRecord::RecordNotFound in UsersController#show

Couldn't find User with ID=sign_out
Rails.root: /home/jaydel/projects/mbsquared-projects/Wilson-Goldrick

app/controllers/users_controller.rb:16:in `show'

В журналах моего сервера я вижу это для запроса:

Started GET "/users/sign_out" for 127.0.0.1 at 2011-08-04 13:08:51 -0500
  Processing by UsersController#show as HTML
  Parameters: {"id"=>"sign_out"}

У кого-нибудь есть идеи?

43
задан Coleman 12 November 2012 в 21:47
поделиться