J'essaye de construire un document XML en utilisant Nokogiri. Certains des éléments ont des traits d'union. Voici un exemple:Comment créer un XML en utilisant Nokogiri :: XML :: Builder avec un trait d'union dans le nom de l'élément?
require "nokogiri"
builder = Nokogiri::XML::Builder.new do |xml|
xml.foo_bar "hello"
end
puts builder.to_xml
qui produit:
<?xml version="1.0"?>
<foo_bar>hello</foo_bar>
Cependant, lorsque je tente:
builder = Nokogiri::XML::Builder.new do |xml|
xml.foo-bar "hello"
end
je reçois:
syntax error, unexpected tSTRING_BEG, expecting kDO or '{' or '('
xml.foo-bar "hello"
Maintenant, je sais que c'est parce que le trait d'union est interprété comme foo MINUS bar
.
Comment est-ce que je devrais faire ceci?
où vient le bonjour venir en ? xml.send (: "foo-bar", "bonjour")? – Angela
Où est-il documenté dans la documentation officielle de Nokogiri? pouvez-vous s'il vous plaît partager un lien? – yegor256
@ yegor256 ici vous allez: http://www.rubydoc.info/github/sparklemotion/nokogiri/Nokogiri/XML/Builder – bonh