Изменить пароль с помощью аутентификации RESTful - PullRequest
0 голосов
/ 04 ноября 2011

ОК, у меня относительный успех с аутентификацией RESTful.Я следовал этому руководству , чтобы добавить возможность смены пароля.Проблема в том, что учебник написан для rails 2.3, а я использую rails 3.

Код, используемый в моем контроллере и представлении, точно такой же, как в учебнике

Я добавил в rout.rb:

  match '/change_password' => 'users#change_password', :as => :change_password
  resources :users, :controller => 'users', :collection => {:change_password_update => :put}

Теперь я получаю эту ошибку: неопределенный метод `change_password_update_user_path '

В комментариях к учебнику упоминается именно эта ошибка, и они говорят, что решениенаходится в маршрутизации, но учитывая различия в маршрутизации между 2.3 и 3, я на самом деле просто догадываюсь, что нужно сделать.Любая идея, как я могу заставить это работать?

1 Ответ

0 голосов
/ 20 ноября 2011

все, что мне нужно было сделать, это изменить

<% form_tag change_password_update_user_path(current_user), :method => :put do |f| %>

на

<% form_tag '/change_password_update', :method => :put do |f| %>

и поместить это в мои маршруты.rb

match '/change_password' => 'users#change_password', :as => :change_password
match '/change_password_update' => 'users#change_password_update', :as => :change_password_update
resources :users, :controller => 'users', :collection => {:change_password_update => :put}
...