рельсы разработаны, нет маршрута соответствует выходу - PullRequest
11 голосов
/ 24 июля 2011

Хотя есть много похожих вопросов, я искал его часами, но все еще не могу это исправить.

ко рельсы 3.0.9 рубин 1.9.2 разработка 1.4.2

Я изменил URL входа по умолчанию, используя:

 5   resources :users
 6   devise_for :users, :path => "", :path_names => { :sign_in => 'login', :sign_out  
     => 'logout', :password => 'secret', :confirmation => 'verification', :unlock =>
     'unblock', :registration => 'register', :sign_up => 'cmon_let_me_in' }

А у меня http://localhost:3000/login отлично работает Но я включаю

 = link_to 'sign_out', destroy_user_session_path, :method => :delete

в моей заявке Зачем? Пожалуйста, помогите мне.

Ответы [ 3 ]

11 голосов
/ 18 августа 2011

У меня была почти идентичная проблема, и благодаря SO она довольно легко ее исправила ( ссылка на мой вопрос ).Во-первых, убедитесь, что у вас есть <%= javascript_include_tag :defaults %> в файле макета «application.html.erb».

Затем в вашем файле config -> initializers -> devise.rb убедитесь, что в нем указано:

config.sign_out_via = :delete

и ваш код "sign_out" destroy_user_session_path, :method => :delete должно работать.

5 голосов
/ 26 декабря 2013

Немного опоздал на эту вечеринку, но вот некоторая помощь от другого ответа

Укажите свой метод:

<%= link_to "sign out", destroy_user_session_path, method: :delete %>
4 голосов
/ 18 февраля 2012

Установите config.sign_out_via = :get в config/initializers/devise.rb, чтобы использовать следующий код для ссылки на выход.

<%= link_to "Sign Out", destroy_user_session_path %>
...