Nokogiri-如何命名节点“ comment”?

萨拉索特拉

我正在使用Nokogiri创建一些XML:

def builder
  Nokogiri::XML::Builder.new do |xml|
    xml.foobar do
      xml.comment('Some comment', created_at: Time.zone.now.iso8601)
    end
  end
end

我想要这样的结构:

<foobar>
  <comment created_at='...'>
   Some comment
  </comment>
</foobar>

不幸的是,Nokogiri DSL不允许我命名节点,comment因为它是创建XML注释的内部方法。我该如何实现?

查理

从文档中:http : //www.rubydoc.info/github/sparklemotion/nokogiri/Nokogiri/XML/Builder

不幸的是,在红宝石中定义了一些难以删除或危险的方法。例如,您可能想创建名称为“ type”,“ class”和“ id”的标签。在这种情况下,您可以使用下划线从方法调用中消除标记名称的歧义。

因此,您需要:

def builder
  Nokogiri::XML::Builder.new do |xml|
    xml.foobar do
      xml.comment_('Some comment', created_at: Time.zone.now.iso8601)
    end
  end
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章