Verwenden Sie Firebase, alle? Es ist sehr praktisch, da es alle Funktionen bietet, die Sie zum Erstellen einer einfachen Anwendung benötigen. Ich denke auch, dass es ein sehr netter Service ist, aber es gibt Spezifikationen, die möglicherweise nicht bemerkt werden, wenn Sie einen Blick auf das offizielle Dokument werfen, und ich möchte es diesmal teilen.
Schauen Sie sich den Code unten an. Code zum Abrufen aller Dokumente in der Sammlung.
docs = db.collection(u'cities').stream()
for doc in docs:
print(u'{} => {}'.format(doc.id, doc.to_dict()))
Quelle: Offizielles Dokument
Was passiert also, wenn Sie diesen Code wie folgt ändern?
docs = db.collection(u'cities').stream()
for doc in docs:
#nanka omoi syori
time.sleep(100)
print(u'{} => {}'.format(doc.id, doc.to_dict()))
Wenn Sie versuchen, es auf diese Weise auszuführen, können Sie sehen, dass nur das erste ausgegeben wird.
Wenn der Inhalt des zu erfassenden Dokuments klein und der Betrag beispielsweise nicht so groß ist, können Sie alle Dokumente wie folgt einmal erwerben.
docs = [doc.id for doc in db.collection(u'cities').stream()]
for doc_id in docs:
#nanka omoi syori
time.sleep(100)
print(doc_id)
Vielleicht möchten Sie eine riesige Sammlung erhalten. In diesem Fall verweisen Sie bitte auf den folgenden Link und verwenden Sie den Abfragecursor. Frage zum Stapelüberlauf Offizielle Dokumentation zu Abfragecursorn
Ich habe nach japanischen Materialien wie Qiita-Artikeln gesucht, die diese Angelegenheit beschreiben, aber es gab überhaupt keine Treffer ...: cry: (Stand: 2. Februar 2020) Ich denke, dass dies je nach Art der Anwendung kritisch sein kann, und ich hoffe, dass es denjenigen hilft, die über das Studium von Firebase nachdenken oder es in der Praxis verwenden.
Recommended Posts