Andorid, как я могу добавить значение в массиве документов - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь добавить элемент карты в определенную позицию моего массива. Для этого я попробовал этот код:

     String userid =FirebaseAuth.getInstance().getCurrentUser().getUid();
    DocumentReference washingtonRef = db.collection("Users").document(userid);

// Atomically add a new region to the "regions" array field.
    washingtonRef.update("shoppingLists[0]", FieldValue.arrayUnion("greater_virginia"));


  }

Вот структура, в которой я должен добавить значение: На данный момент я должен добавить значение

1 Ответ

0 голосов
/ 18 января 2019

Вы не можете индексировать такие поля массива с помощью Firestore. Вы можете добавлять или удалять элементы поля типа списка по значению, используя arrayUnion и arrayRemove, но вы не можете указать, где этот элемент находится в массиве. Если вам нужен больший контроль над порядком элементов в массиве, вам придется сначала прочитать документ, изменить массив в памяти, а затем обновить это поле обратно в документ.

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