Firestore do not create



我正在编写连接到Cloud Firestore的Python代码。如果文档的id是1

,我希望我的代码跳过而不创建文档
if docid == 1:
# do not create document
else:
db.collection(u'collection_of_work').document(docid).set(data)

如何"不创建"一个文档吗?

我认为您可以使用if语句(我假设您知道docid,因为您想使用docid设置文档):

if docid != 1:
db.collection(u'collection_of_work').document(docid).set(data)

你不可能自动做到这一点。你得检查一下。因此,您需要创建一个引用,该引用指向具有特定ID的文档并读取它。如果它已经存在,则只需将该数字加1并创建另一个set()操作。

尝试使用firebase-admin

import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
cred = credentials.Certificate(
"firestore-cred.json"
)
firebase_admin.initialize_app(cred)
db = firestore.client()  
query_docid = db.collection(u'collection_of_work').document(u"1", u"==", docid).get()

if query_docid:
print('do not create docuement')
else :
db.collection(u'collection_of_work').document(docid).set(data)

我的问题也是类似的。我通过Barış Şenyerli得到了答案

如果你找不到答案,这个人会帮你的。

祝一切顺利

相关内容

  • 没有找到相关文章