我已经创建了Haml助手并将其作为文件放在路径app / helpers / haml_helper.rb
中module Haml::Helpers
def build_segment(files)
files.each do |f|
if f[:dir] == nil
haml_tag :li do
haml_tag :a, :class=>"file", :href=>f[:name] do
f[:name]
end
end
else
haml_tag :li do
haml_tag :a, :class=>"folder", :href=>f[:name] do
f[:name]
end
end
haml_tag :ul do
build_segment(f[:dir])
end
end
end
end
end
但后来我遇到了一个错误:
LoadError in SourceFilesController#index
Expected /home/megas/Work/read_the_code/app/helpers/haml_helper.rb
to define HamlHelper
SourceFilesController #index是一个将使用此自定义帮助程序的操作。
如何向项目添加自定义haml助手?
答案 0 :(得分:0)
所以,当你有haml_helper.rb时,它希望它定义HamlHelper ....但你想要Haml :: Helper。所以:
/helpers/haml/helpers
具有命名空间控制器时也是如此。 Admin :: CustomersController位于app / controllers / admin / customers_controller.rb