我使用以下代码将模板呈现为我稍后可以使用的字符串:
renderer = ActionView::Base.new(MyApp::Application.config.view_path)
# INCLUDE HELPERS HERE
data = renderer.render(:partial => template, :locals => locals)
但是,我希望能够访问一些帮助程序(实际上都是)。在rails 2.3中,我能够做到这一点:
renderer.extend ApplicationController.master_helper_module
然而,从Rails 3开始,这不再适用。那么,如何让我的帮助方法可用于我的模板?
答案 0 :(得分:5)
您可能需要查看abstract_controller/rendering.rb
看起来在rails 3中我们应该能够做到这样的事情:
renderer = ApplicationController.view_context_class.new(...)
模块master_helper_module
现在可以通过名称_helpers
访问,它应该已经包含在view_context_class