Firebase создайте документ и увеличьте

# #firebase #google-cloud-firestore

Вопрос:

Я пытаюсь увеличить значение для своих документов; Иногда документ не существует, поэтому мне нужно создать его, а затем обновить.

     my_ref = db.collection(u'my_col').document(f"my_doc_key")
    my_doc = my_ref.get()

    if my_doc.exists:
        my_ref.update({"count": firestore.Increment(1)})
    else:
        my_ref.set({"count": 1})
 

Я знаю, что могу использовать update() и Increment() если документ существует. Я знаю, что если документ не существует, я могу создать его и создать коллекцию внутри него set() . Есть ли способ сделать это одним способом? Что-то вроде этого:

     my_ref.set({"count": firestore.Increment(1)})
 

Комментарии:

1. Если вы решили свой вопрос, примите ответ, чтобы члены сообщества, посетившие ваш вопрос, могли ссылаться на принятый ответ.

2. @PriyashreeBhadra Плакат может принять свой собственный ответ только через 2 дня.

Ответ №1:

Решил это с помощью merge=True параметра

      my_ref = db.collection(u'my_col').document(f"my_doc_key")
     my_ref.set({"count": firestore.Increment(1)}, merge=True)