2017-09-25 10 views
0

Comment puis-je insérer un autre élément XML dans un fichier XML que je crée avec Builder :: XmlMarkup? par exemple, quelque chose commeRuby: Insérer un nouvel élément XML dans un fichier XML existant

xml = Builder::XmlMarkup.new(:indent => 4) 

xml.content 
    xml.common do 
     xml.common_field1 do 
      // common_field1 content 
     end 
     xml.common_field2 do 
      // common_field 2 content 
     end 
    end 
    xml.custom do 
     xml.insert!(<XML element>) 
    end 
end 

<XML element> ressemble à quelque chose comme

<elements> 
    <element> 
     // element content 
    </element> 
    <element> 
     // element content 
    </element> 
<elements> 

et la sortie finale ressemble

<content> 
<common> 
    <content1> 
    <!-- content1 --> 
    </content1> 
    <content2> 
    <!-- content2 --> 
    </content2> 
</common> 
<custom> 
    <elements> 
    <element> 
    <!-- element content --> 
    </element> 
    <element> 
    <!-- element content --> 
    </element> 
    </elements> 
</custom> 
</content> 

J'ai essayé d'utiliser l'opérateur << mais qui ne malheureusement pas ne maintient pas le formatage.

Répondre