Ceci est un exemple d'implémentation lorsque vous souhaitez lire le fichier XML téléchargé depuis l'écran en type Hash dans une application utilisant Rails (série 5).
Cette fois, j'utilise le fichier XML suivant pour la vérification
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item>AAA</item>
<item>BBB</item>
<item>CCC</item>
</items>
Placez le fichier et la balise de bouton de manière appropriée. (Vous pouvez choisir votre style de conception!)
<%= form_tag xxx_path, multipart: true do %>
<label>Lire le fichier XML</label>
<div class="row">
<div class="col-sm-2">
<%= file_field_tag :file, class: 'btn btn-primary' %>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<%= submit_tag 'Envoyer', class: 'btn btn-primary' %>
</div>
</div>
<% end %>
xml = REXML::Document.new(File.new(params[:file].path).read)
xml_h = Hash.from_xml(xml.to_s)
En raison de ce qui précède, vous pouvez obtenir le contenu du fichier au format Hash comme indiqué ci-dessous.
{"items"=>{"item"=>["AAA", "BBB", "CCC"]}}