2012-04-06 53 views
1

我有需要循环的代码,它需要通过each循环更改节点名称,下面是我的意思的示例:使用循环在Nokogiri :: XML :: Builder代码块内创建多个节点

builder = Nokogiri::XML::Builder.new do |xml| 
    xml.HasThreeNodes { 
    ['Node1','Node2','Node3'].each do |name| 
     xml.name "value" 
    end 
    } 
end 

输出:

<?xml version="1.0"?> 
<HasThreeNodes> 
    <name>value</name> 
    <name>value</name> 
    <name>value</name> 
</HasThreeNodes> 

我曾尝试的代码不同的变化,但没有成功。我只需要它说<name><Node1>等等。任何帮助非常感谢,谢谢。

回答

2

这工作:

xml.send name, "value" 

而且为什么混合花括号和做/结束?它看起来更好,如果它是一致的。