我得到了一个NoMethodError
当尝试从我的控制器类之一访问我的帮助器模块之一中定义的方法时。我的 Rails 应用程序使用helper
类方法与:all
符号如下图所示:
class ApplicationController < ActionController::Base
helper :all
.
.
end
我的理解是,这应该使我的所有控制器类自动包含 app/helpers 目录中的所有帮助器模块,因此将所有方法混合到控制器中。它是否正确?
如果我明确地include
控制器内的辅助模块则一切正常。
要使用模板引擎中已包含的辅助方法:
- Rails 2:使用
@template
多变的。
- Rails 3:有很好的控制器方法view_context http://apidock.com/rails/AbstractController/Rendering/view_context
在控制器方法中调用“number_to_currency”的示例用法:
# rails 3 sample
def controller_action
@price = view_context.number_to_currency( 42.0 )
end
# rails 2 sample
def controller_action
@price = @template.number_to_currency( 42.0 )
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)