【发布时间】: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 文件夹中。
标签: ruby-on-rails