So verwenden Sie XML zu Ruby
- Fügen Sie ein repräsentatives XML-Beispiel ein, idealerweise eines, in dem alle optionalen Felder gefüllt sind.
- Legen Sie den Namen des Wurzeltyps fest und entscheiden Sie, ob Sie auch Hilfscode oder nur Typen haben möchten.
- Kopieren Sie den erzeugten Ruby-Code in Ihr Projekt.
Über XML zu Ruby
Modellklassen für eine große XML-Payload von Hand zu schreiben, ist öde, und genau dort schleichen sich Tippfehler ein. Fügen Sie hier ein Beispiel ein, und der Generator ermittelt die Struktur: welche Felder es gibt, welche Objekte, welche Arrays sind und welchen Typ jeder Wert hat. Die Ausgabe sind Dry::Struct-Klassen mit Dry::Types sowie Hilfsmethoden from_dynamic und to_dynamic.
XML wird zuerst auf dieselbe Weise in JSON umgewandelt wie in unserem Tool XML zu JSON: Attribute erhalten das Präfix @_, und Textinhalt neben Attributen heißt #text. Aus diesem Ergebnis werden die Ruby-Typen erzeugt. Der erzeugte Code ist ausführlich, weil er Typen zur Laufzeit validiert, was Ruby selbst nicht tut.
Den erzeugten Code verwenden
Fügen Sie das Gem dry-struct hinzu und rufen Sie Root.from_json!(text) auf.
Optionale Attribute werden mit dem Typ optional deklariert und können nil sein.