我想创建以下XML:
<?xml version="1.0">
<foo>
<bar/>
TEXT GOES HERE
</foo>
使用Nokogiri构建结构非常简单:
builder = Nokogiri::XML::Builder.new do |xml|
xml.foo {
xml.bar {}
}
end
puts builder.to_xml
我无法弄清楚如何在TEXT GOES HERE
内插入<foo>
字符串,而在 <bar/>
之后插入。
显然,xml.foo("TEXT GOES HERE")
会在<bar>
之前生成文字。我错过了什么?
答案 0 :(得分:2)
您需要text
方法:
require 'nokogiri'
builder = Nokogiri::XML::Builder.new do |xml|
xml.foo {
xml.bar
xml.text "TEXT GOES HERE"
}
end
puts builder.doc
#=> <?xml version="1.0"?>
#=> <foo><bar/>TEXT GOES HERE</foo>