我正在尝试创建一个简单的视图助手,但是一旦我尝试嵌套几个内容标签,它就会抛出
NoMethodError: undefined method `output_buffer=' for
def table_for(list, &proc)
t = Table.new
proc.call(t)
t.render_column(list)
end
class Table
include ActionView::Helpers::TagHelper
attr_accessor :columns, :block
def initialize
@columns = Array.new
end
def col(name)
@columns << name
end
def render_column(list)
content_tag :table do
list.each do |c|
content_tag :td, c
end
end
end
end
有什么问题的提示吗?我还看到有一个 XmlBuilder 是否更适合我的目的?
ActionView::Base内置了Context模块,它提供了output_buffer()和output_buffer=()方法。
因此,您可以通过让您的班级执行以下操作来解决您的问题:
include ActionView::Context
或者更简单地说:
attr_accessor :output_buffer
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)