【问题标题】:Multiple Devise controller overrides多个设计控制器覆盖
【发布时间】:2015-04-26 22:53:55
【问题描述】:

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

Restrict Devise password recovery to only certain users

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

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

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

【问题讨论】:

    标签: ruby-on-rails devise


    【解决方案1】:

    线

    :controllers => {registrations: 'registrations' } 
    

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

    完整的行应该是

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

    【讨论】:

    • :controllers => {registrations: 'registrations' } 使用您的自定义注册控制器,因此添加 {passwords: 'passwords'} 将使用您的自定义密码控制器。
    • 感谢 Ativ,这正是我想要的!
    猜你喜欢
    • 1970-01-01
    • 2011-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 2011-12-25
    • 1970-01-01
    相关资源
    最近更新 更多