多个设计控制器覆盖

时间:2015-02-25 03:36:22

标签: ruby-on-rails devise

我正在尝试限制特定用户的Devise密码重置。我找到了这个描述覆盖PasswordsController的线程:

Restrict Devise password recovery to only certain users

我的问题是,我已经用我自己的注册控制器覆盖注册:

devise_for:users,:controllers => {registrations:'registrations'}

我的注册控制器继承自Devise :: RegistrationsController,根据上面的线程,我的密码控制器将需要继承Devise :: PasswordsController,因此是一个单独的控制器。如何才能有多个Devise控制器来促进这些覆盖?

1 个答案:

答案 0 :(得分:2)

该行

:controllers => {registrations: 'registrations' } 

使用您的自定义注册控制器,因此添加{passwords: 'passwords'}将使用您的自定义密码

完整的行应该是

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