我的问题:我想在我的lib文件夹中创建一个类TitlePanel,该类使用content_tag方法,但我无法弄清楚如何加载它.我已经尝试了所有我想到的'xxx'并且它一直给我错误消息,它无法找到所需的文件.
基本上,我想要做的是创建一个生成html的帮助器,但我必须先通过一个类来存储一些值.我想要做的事情:
title = TitlePanel.new("this is my title")
title.add_panel "help" do
content_tag :div, "this is the help section..."
end
title.add_panel "search" do
content_tag :div, "this is the search section..."
end
title.to_s
Run Code Online (Sandbox Code Playgroud)
输出是使这项工作所需的所有HTML.
Jim*_*nes 10
试一试.如果在lib目录中的文件顶部包含TagHelper,它应该可以工作.这是一个例子:
class MyLib
include ActionView::Helpers::TagHelper
def foo(x)
content_tag :div, x
end
end
>> MyLib.new.foo "bar"
=> "<div>bar</div>"
Run Code Online (Sandbox Code Playgroud)
d3v*_*kit 10
这是一个老问题,但我首先发现了这个并且遇到了与OP相同的问题.我找到的最佳解决方案是使用它:
ActionController::Base.helpers.content_tag(:div, nil, class: 'my_div')
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5424 次 |
最近记录: |