我在 OSX 上使用 Devise 2.0.0 和 Rails 3.2.3。
是否可以同时覆盖设计控制器和设计视图?
我成功地用我自己的范围视图覆盖了确认/新视图,位于views/users/confirmations/new.html.erb
. 范围视图工作正常。
然后我发现有必要Devise::ConfirmationsController
用我自己的控制器覆盖AppConfirmationsController
,以便自定义 after_confirmation_path_for 方法以返回我自己的自定义路径。
class AppConfirmationsController < Devise::ConfirmationsController
protected
def after_confirmation_path_for(resource_name, resource)
confirmed_app_custom_path
end
end
我更改了路线,以便使用我的自定义控制器
devise_for :users, :controllers => {:confirmations => 'app_confirmations'}
新控制器工作正常,但我的范围视图不再被识别。不是渲染我的范围视图,而是渲染设计默认视图。如果我停止使用我的自定义控制器,我的作用域视图会再次开始工作。
使用客户控制器时,我是否遗漏了一些影响范围视图的配置设置?