L’import de données JSON complexes est disponible depuis la version 7.2.14 de Spectre.
L'utilisation d'un caractère * dans une entrée JSON permet la manipulation des sous-tableaux.
L'objet json-input de Spectre charge les données JSON dans une table.
Voici le code Spectre associé aux données précédentes :
json-input "data.json" {
column "Order ID" key="orderID"
column "Cost" key="cost" format="$#,#"
}
Généralement, chaque entrée dans le JSON devient une ligne de la table :
Le paramètre "key" détermine la valeur JSON à utiliser pour une colonne.
Utiliser "." pour sélectionner les valeurs à l'intérieur de sous-objets.
json-input "data.json" {
column "Order ID" key="orderID"
column "Vendor Name" key="vendor.name"
column "Vendor Zip" key="vendor.zip"
column "Cost" key="cost" format="$#,#"
}
Qu'en est-il quand un objet a plusieurs valeurs dans un sous-tableau ?
Ici nous avons besoin de plusieurs lignes en entrée, une pour chaque objet dans le sous-tableau.
Les autres valeurs seront répétées.
Le code à utiliser est le suivant :
json-input "data.json" {
column "Order ID" key="orderID"
column "Item Type" key="items.*.type"
column "Item Amount" key="items.*.amount"
}
Le caractère * fonctionne uniquement pour un sous-tableau.
Pour plusieurs sous-tableaux il est recommandé de faire des tables séparées.