2015-02-25 5 views
0

Я пытаюсь ограничить сброс пароля для определенных пользователей. Я нашел эту нить, которая описывает преимущественную PasswordsController:Переопределение контроллера нескольких элементов

Restrict Devise password recovery to only certain users

Моя проблема в том, что я уже перекрывая регистрацию с моим собственным контроллером регистрации:

devise_for: пользователей,: контроллеры => {регистраций: ' registrations '}

Мой контроллер регистрации наследуется от Devise :: RegistrationsController, и в соответствии с приведенным выше потоком мой контроллер паролей должен будет наследовать Devise :: PasswordsController и, следовательно, быть отдельным контроллером. Как я могу использовать несколько контроллеров Devise для облегчения этих переопределений?

ответ

1

Линия

:controllers => {registrations: 'registrations' } 

использует свой собственный контроллер регистраций, поэтому добавление {passwords: 'passwords'} будет использовать пользовательские пароли

Полная линия должна быть

controller.devise_for :users, :controllers => { registrations: 'registrations', passwords: 'passwords' } 
+0

вы можете уточнить? – dgilperez

+0

: controllers => {registration: 'registrations} использует ваш пользовательский контроллер регистрации, поэтому добавление {пароли:' пароли} будет использовать ваш пользовательский контроллер паролей. – Ativ

+0

Спасибо, Атин, это именно то, что я искал! – besson3c

Смежные вопросы