ritorna gqlQuery oggetto, vogliono elenco di chiavi
-
20-09-2019 - |
Domanda
C'è un modo per convertire l'oggetto GqlQuery a una serie di chiavi, o c'è un modo per forzare la query per restituire una matrice di chiavi Ad esempio:?
items = db.GqlQuery("SELECT __key__ FROM Items")
restituisce un oggetto contenente le chiavi:
<google.appengine.ext.db.GqlQuery object at 0x0415E210>
Ho bisogno di confrontarlo con una serie di chiavi che assomigliano:
[datastore_types.Key.from_path(u'Item', 100L, _app_id_namespace=u'items'),
..., datastore_types.Key.from_path(u'Item', 105L, _app_id_namespace=u'fitems')]
Nota: posso aggirare il problema eseguendo una query per gli oggetti memorizzati, e quindi chiamando .key (), ma questo sembra uno spreco
.items = db.GqlQuery("SELECT * FROM Items")
keyArray = []
for item in items:
keyArray.append(item.key())
Soluzione
Certo - è possibile recuperare i risultati chiamando .fetch (contare) sull'oggetto GqlQuery. Questo è il metodo consigliato, infatti -. Iterazione recupera i risultati in lotti, e così è meno efficiente
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow