【发布时间】:2011-03-28 23:39:44
【问题描述】:
我正在将我的 Rails 插件升级为与最新 3.0RC1 版本一起使用的引擎,但我在找出扩展 ActionController 的最佳(也是最正确)方法时遇到了一些麻烦。我在 SO 上看到了 DHH 的 this post 和 this question 这里,但我的问题更多是关于如何正确调用 ActionController 中的代码。
例如,我需要在引擎的控制器中调用以下代码:
class ApplicationController < ActionController::Base
helper :all
before_filter :require_one_user
after_filter :store_location
private
def require_one_user
# Code goes here
end
def store_location
# Code goes here
end
end
我知道如何正确地包含我的两个私有函数,但我找不到让它正确调用 helper、before_filter 和 after_filter 的方法。
我将不胜感激一些链接或使这项工作的方法。我尝试将我的控制器命名为 ApplicationController 以外的其他名称,并让真正的 ApplicationController 对其进行扩展,但这似乎也不起作用。我真的很喜欢任何让引擎用户的生活尽可能轻松的解决方案。理想情况下,他们不必扩展我的课程,但他们会将所有功能都内置到他们自己的 ApplicationController 中。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 rails-engines applicationcontroller