应该如何访问 /lib 中的查看辅助方法?
Posted
技术标签:
【中文标题】应该如何访问 /lib 中的查看辅助方法?【英文标题】:How should view helper methods from /lib be accessed? 【发布时间】:2015-05-19 04:29:36 【问题描述】:我在 [app]/lib 下的 Modules 中封装了一些方法,lib 文件夹已添加到 config.autoload_paths,我还将 Include MyHelper
添加到 ApplicationController 类中。
错误(在视图中)是:
undefined local variable or method
我正在使用 lib 目录,因为这些方法不是特定于应用程序的。
呃,有一条关于“更多”代码的注释。
lib/my_helper.rb
module MyHelper
def my_tag
"<div>hello</div>"
end
end
config/application.rb
...
config.autoload_paths << "#Rails.root/lib"
...
app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
include MyHelper
...
end
app/views/layouts/application.html.erb
...
<%= my_tag %>
...
【问题讨论】:
请发布更多代码。 为什么不直接把你的助手模块放到 app/helpers floder 中呢? 简单地说......这是一个通用方法。它不应该在 app/helpers 文件夹中。 【参考方案1】:应该使用helper MyHelper
而不是include MyHelper
。
【讨论】:
以上是关于应该如何访问 /lib 中的查看辅助方法?的主要内容,如果未能解决你的问题,请参考以下文章