1

我正在使用清除 gem 向 Rails 应用程序添加身份验证。我想在会话和密码控制器中使用称为“会话”的不同布局。为了做到这一点,我需要覆盖会话和密码控制器,但到目前为止,我无法让它们中的任何一个使用我的替代布局。

我添加了一个从清除继承的会话控制器,并且我的布局文件位于正确的位置。

class SessionsController < Clearance::SessionsController
  layout 'session'
end

我对密码控制器做了与上面相同的操作。现在我添加了一条路线,我希望它会覆盖清除宝石使用的路线:

resource :session, controller: 'sessions'

但这没有效果,并且使用了应用程序布局。如何对这些控制器使用不同的布局?

4

1 回答 1

1

覆盖布局比这更简单:请参阅:https ://github.com/thoughtbot/clearance#overriding-layouts

Clearance::PasswordsController.layout 'my_passwords_layout'
Clearance::SessionsController.layout 'my_sessions_layout'
Clearance::UsersController.layout 'my_admin_layout'
于 2014-10-03T21:36:13.537 回答