Rails correct way to use link_to with devise

ruby-on-rails

Solution

From this devise sample application, recommended on the Devise wiki:

<% if user_signed_in? %>
  <li><%= link_to 'Edit account', edit_user_registration_path %></li>
  <li><%= link_to 'Sign out', destroy_user_session_path, :method=>'delete' %></li>
<% end %>

Problem

I'm getting started with rails and devise for authentication and I want to make a link to sign out when a user is logged into the admin page. What is the correct way to write the `link_to code` Here's my `rake routes`: ``` admin_index /admin/index(.:format) {:controller=>"admin/home", :action=>"index"} new_user_session GET /users/sign_in(.:format) {:action=>"new", :controller=>"devise/sessions"} user_session POST /users/sign_in(.:format) {:action=>"create", :controller=>"devise/sessions"} destroy_user_session DELETE /users/sign_out(.:format) {:action=>"destroy", :controller=>"devise/sessions"} user_password POST /users/password(.:format) {:action=>"create", :controller=>"devise/passwords"} new_user_password GET /users/password/new(.:format) {:action=>"new", :controller=>"devise/passwords"} edit_user_password GET /users/password/edit(.:format) {:action=>"edit", :controller=>"devise/passwords"} PUT /users/password(.:format) {:action=>"update", :controller=>"devise/passwords"} cancel_user_registration GET /users/cancel(.:format) {:action=>"cancel", :controller=>"devise/registrations"} user_registration POST /users(.:format) {:action=>"create", :controller=>"devise/registrations"} new_user_registration GET /users/sign_up(.:format) {:action=>"new", :controller=>"devise/registrations"} edit_user_registration GET /users/edit(.:format) {:action=>"edit", :controller=>"devise/registrations"} PUT /users(.:format) {:action=>"update", :controller=>"devise/registrations"} DELETE /users(.:format) {:action=>"destroy", :controller=>"devise/registrations"} home_index GET /home/index(.:format) {:controller=>"home", :action=>"index"} root / {:controller=>"home", :action=>"index"} ``` I tried `<%= link_to "Sign Out", destroy_user_session_path %>` but when i click the link it gives me the error: ``` No route matches [GET] "/users/sign_out" ```

Original source