Swift firestore updateData не создает новый документ - PullRequest
1 голос
/ 16 марта 2019

У меня есть массив, в который я хочу добавить некоторые данные. если документ не существует, он должен создать новый, но это не работает. Работает только с уже созданными документами. Вот мой код:

    let washingtonRef = db.collection("ShoppingLists").document(valueset["listId"]!)

    uploadData["productId"] = productID
    uploadData["sellerId"] = sellerId
    washingtonRef.setData([
        "products": FieldValue.arrayUnion([uploadData])
        ])

1 Ответ

0 голосов
/ 16 марта 2019

Вы забыли флаг merge в setData:

washingtonRef.setData([
           "products": FieldValue.arrayUnion([uploadData])
        ], merge: true)

Если вы используете метод setData для хранения документа, существующие документы будут перезаписаны! Если вы хотите обновить существующий документ с помощью setData, вам нужно добавить флаг merge: true

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...