我正在尝试使用 Nokogiri 构建 XML,其中一些标签在标签内具有属性和纯文本。所以我试图做到这一点:
<?xml version="1.0"?>
<Transaction requestName="OrderRequest">
<Option b="hive">hello</Option>
</Transaction>
使用生成器我有这个:
builder = Nokogiri::XML::Builder.new { |xml|
xml.Transaction("requestName" => "OrderRequest") do
xml.Option("b" => "hive").text("hello")
end
}
呈现为:
<Transaction requestName="OrderRequest">
<Option b="hive" class="text">hello</Option>
</Transaction>
所以它会产生
<Option b="hive" class="text">hello</Option>
我想要的地方
<Option b="hive">hello</Option>
我不知道该怎么做。如果我尝试通过仅向 Nokogiri 对象提供我想要的 XML 来获取它,它会准确地呈现我需要的内容,其中内部文本位于<Option>
设置为的标签内children=[#<Nokogiri::XML::Text:0x80b9e3dc "hello">]
,我不知道如何从构建器中设置它。
如果有人在 Nokogiri 文档中有参考,我将不胜感激。