我正在循环遍历数组中的一组标记名称,我想使用构建器打印每个标记名称而不依赖于“<<”的手动XML方法
我想:
builder = Nokogiri::XML::Builder.new do |xml|
for tag in tags
xml.tag! tag, someval
end
end
会这样做,但它只是创建名为“tag”的标签,并将标签变量作为元素的文本值。
有人可以帮忙吗?这似乎应该相对简单,我在搜索引擎上找到答案时遇到了麻烦。我可能不会以正确的方式提出这个问题。
答案 0 :(得分:10)
尝试以下方法。我添加了一个根节点,因为Nokogiri需要一个根节点,如果我没弄错的话。
builder = Nokogiri::XML::Builder.new do |xml|
xml.root do |root|
for tag in tags
xml.send(tag, someval)
end
end
end
答案 1 :(得分:6)
尝试使用method_missing
builder = Nokogiri::XML::Builder.new do |xml|
for tag in tags
xml.method_missing(tag, someval)
end
end