目的of目的

技術的な事とか趣味な事を書いて日本語の練習

BuilderでXMLを生成するとき,要素に属性をつける

というわけですごくすごく必要だったので調べました.

test = [{"id" => 1,"name" => "hoge"},{"id" => 2,"name" => "fufu"}]

test.each do |r|
    xml.line do
    r.each do |k,v|
      xml.value(v, :name => k)
    end
  end
end

で出力されるのがこんな感じになります,

<line>
    <value name="id">1</value>
    <value name="name">hoge</value>
  </line>
  <line>
    <value name="id">2</value>
    <value name="name">huga</value>
  </line>

参考にしたのはRuby on Rails 3 アプリケーションプログラミングです,素晴らしい本ですよね!!!

Ruby on Rails 3 アプリケーションプログラミング[AA]