Was macht ein Blank GQL Ergebnis aus?
-
20-09-2019 - |
Frage
Ich arbeite an einer Google App Engine-Anwendung, und habe einige Probleme mit einer GQL Abfrage und eine if-Anweisung gegenüber. Dies ist der Code:
q = Song.gql("WHERE title = :1", self.request.get('song_title'))
q.get()
if q:
r = "Excisting Results Found: <br />"
print q
for song in q:
r += song.title+" by "+song.artist+"<br />"
self.response.out.write(r)
else:
...
Wenn dies ausgeführt wird, wird die Seite returns „Altbau Ergebnisse gefunden:“ aber ich weiß, dass keine Ergebnisse in der Tat waren gefunden. Gibt es eine Möglichkeit zu überprüfen, ob die Ergebnisse von der Abfrage zurückgegeben leer sind? Was wäre ein leeres Ergebnis aus GqlQuery
zurückgegeben Look wie?
Jede Hilfe wäre sehr geschätzt,
Danke.
Lösung
In diesem Beispiel q ein GQL Abfrageobjekt. Auch wenn Sie es als iterable, ruft get behandeln kann () auf es wird ein einzelnes Ergebnis zurück, und Sie würden dieses Ergebnis einer Variablen zugewiesen werden müssen. Sie können auch überprüfen, ob es Ergebnisse sind durch Prüfen, ob q.count (1) größer als 0 ist.