1
我有一個用戶對象數組,我想返回爲xml。我如何使用to_xml在根元素上包含屬性?例如Rails數組to_xml
<users total="10">
<user>
..
</user>
</users>
我知道你可以添加自定義的元素和屬性,以使用與to_xml方法塊中的XML,但我不知道如何添加到根元素。也許還有另一種方式,除了使用to_xml
我有一個用戶對象數組,我想返回爲xml。我如何使用to_xml在根元素上包含屬性?例如Rails數組to_xml
<users total="10">
<user>
..
</user>
</users>
我知道你可以添加自定義的元素和屬性,以使用與to_xml方法塊中的XML,但我不知道如何添加到根元素。也許還有另一種方式,除了使用to_xml
我已經使用了xml構建器。以下代碼片段涵蓋了一些棘手的XML構建。
在你的控制器,
require 'builder'
def show_xml
@xml = get_xml_data
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @xml }
end
end
def get_xml_data
xml = Builder::XmlMarkup.new#(:target=>$stdout, :indent=>2)
xml.instruct! :xml, :version => "1.0", :encoding => "US-ASCII"
xml.declare! :DOCTYPE, :html, :PUBLIC, "-//W3C//DTD XHTML 1.0 Strict//EN",
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
favorites = {
'candy' => 'Neccos', 'novel' => 'Empire of the Sun', 'holiday' => 'Easter'
}
xml.favorites do
favorites.each do | name, choice |
xml.favorite(choice, :item => name)
end
end
end