Dati i seguenti JSON:query json che restituisce l'elemento padre e i dati figlio?
{
"README.rst": {
"_status": {
"md5": "952ee56fa6ce36c752117e79cc381df8"
}
},
"docs/conf.py": {
"_status": {
"md5": "6e9c7d805a1d33f0719b14fe28554ab1"
}
}
}
c'è un linguaggio di query che può produrre:
{
"README.rst": "952ee56fa6ce36c752117e79cc381df8",
"docs/conf.py": "6e9c7d805a1d33f0719b14fe28554ab1",
}
mio miglior tentativo finora con JMESPath (http://jmespath.org/) non è molto vicino:
>>> jmespath.search('*.*.md5[]', db)
['952ee56fa6ce36c752117e79cc381df8', '6e9c7d805a1d33f0719b14fe28554ab1']
Sono arrivato allo stesso punto con ObjectPath (http://objectpath.org):
>>> t = Tree(db)
>>> list(t.execute('$..md5'))
['952ee56fa6ce36c752117e79cc381df8', '6e9c7d805a1d33f0719b14fe28554ab1']
non ho potuto dare un senso a JSONiq (ne ho veramente bisogno di leggere un manuale di 105 pagina di fare questo?) Questa è la mia prima volta guardando linguaggi di query JSON ..
quindi potresti cercare una chiave diversa da md5? e può essere arbitrariamente profondo? –
corretto – thebjorn
Questo accade nel contesto di un'applicazione Django? Questo può essere fatto tramite i serializzatori rest_framework, ma questo è eccessivo rispetto a quel contesto. – moorecm