0

我正在处理一个需要为密码页面添加新布局的现有项目。我似乎找不到足够完整的答案来获得我需要的工作。我在 application_controller.rb 中的内容是:

class ApplicationController < ActionController::Base
  protect_from_forgery

  layout :layout_by_resource

  protected

  def layout_by_resource
    if devise_controller?
      'signin'
    else
      'application'
    end
  end
end

根据我的阅读,这需要以某种方式更改为这种格式:

config.to_prepare do
  Devise::SessionsController.layout "devise"
  Devise::RegistrationsController.layout proc{ |controller| user_signed_in? ? "application" : "devise" }
  Devise::ConfirmationsController.layout "devise"
  Devise::UnlocksController.layout "devise"            
  Devise::PasswordsController.layout "devise"        
end

...但是试图把它和我所拥有的东西放在一起不起作用或破坏一切。

谁能解释这些部分是如何组合在一起的?上面的代码在哪里?

谢谢!

4

1 回答 1

0

没有人回答,可能是因为这是一个愚蠢的问题。

一旦我意识到一个打算进入配置(application.rb)而另一个进入控制器(application_controller.rb),事情就解决了。

于 2013-03-07T00:37:41.460 回答