Как добавить в массив и создать документ, если он не существует в Firestore? - PullRequest
0 голосов
/ 23 февраля 2020

Я хотел бы позвонить в Firestore, чтобы добавить массив в документ. Я могу сделать это следующим образом:

document.update(someField, FieldValue.arrayUnion(someArrayElement))

Однако, если документ не существует, произойдет сбой. Есть ли способ выполнить вышеупомянутое так, чтобы он создал документ, если он не существует? Я понимаю, что могу проверить наличие документа с помощью get, но предпочел бы избежать чрезмерных операций с БД.

1 Ответ

1 голос
/ 23 февраля 2020

Вы можете использовать set () с параметрами . Это может принять два аргумента. Первый - это то, что вы хотите изменить в документе, а второй говорит, что вы хотите обновить или создать, если он не существует, как описано в документации :

Map<String, Object> data = new Map();
data.set(someField, FieldValue.arrayUnion(someArrayElement));
document.set(data, SetOptions.merge());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...