J'utilise Builder :: XmlMarkup pour produire des structures de données au format XML pour un serveur API RESTful.Générateur Rails XML sans impression (c'est-à-dire XML minifié)
Récemment, j'ai découvert un bogue où la jolie impression de Builder :: XmlMarkup produisait un élément plein de texte d'espaces au lieu d'un élément vide comme il se doit.
Par exemple, ce code:
xml.outertag do
xml.list do
# Some code which loops through a list
end
end
est produit:
<outertag>
<list>
</list>
</outertag>
Lorsque la liste intérieure est une liste vide, l'élément doit être vide —-à-dire < liste /> ou < liste > </list>. Cependant, le code XML réel est une balise liste> < remplie d'un saut de ligne et d'autres espaces. Alors, comment puis-je éliminer complètement la jolie impression de Builder? Actuellement, je pense à Builder :: XmlMarkup de correction de singe de sorte que initialize ignore les paramètres : indent; même si je considère un after_filter aussi.