2012-05-01 23 views
2

私はdeviseに問題がありました。私が工夫して管理者としてログアウトしようとするたびに、私は次のエラーdevise adminログアウトエラー

すくいルートをやっ
No route matches [GET] "/admins/sign_out" 

を取得し、私はそれが

destroy_admin_session DELETE /admins/sign_out(.:format) devise/sessions#destroy 

を持って見て、私の意見に私はそれを呼び出します...

<%= link_to "sign out as admin", destroy_admin_session_path %> 

私はdeviseのadminsコントローラを無効にする必要がありますか?私は/ admins/sign_inに行くことができて奇妙に思える。しかし、/ admins/sign_outに行くことはできません。

私は管理者モデルを使用して管理者を作成しました。

https://github.com/plataformatec/devise/wiki/How-To:-Add-an-Admin-role

誰が工夫で管理者としてこの問題が発生しましたか?これは、符号アウトURLのように見えます

おかげ

+1

routes.rbというコードフォームも表示できますか? – Abid

答えて

2

DELETE HTTPメソッドが必要です。

<%= link_to "sign out as admin", destroy_admin_session_path, method: :delete %> 

となります。

+0

とてもいいです!ありがとうございました! – Sasha

+1

これは私のためにも機能しますが、 'rake routes'が' DELETE'メソッドであることが明確に述べられているときに、なぜdeleteメソッドを渡す必要があるのか​​分かりません。 –