Как прочитать значение пожарного магазина на карте? - PullRequest
0 голосов
/ 20 мая 2019

Я пытаюсь прочитать значение для exp_date в моем приложении флаттера, как показано на этом рисунке:

enter image description here

Пара поле / значение находится в карте с именем Card, которая находится во вложенной коллекции с именем sources. Я могу прочитать значение, поместив DocId для коллекции источников (другой docId - это пользовательский идентификатор firebase) со следующим:

StreamBuilder(stream: Firestore.instance.collection('stripe_customers').document(userId).collection('sources').document('qRvDob75kTzhT3').snapshots(),builder: (context,snapshot){
                if(!snapshot.hasData){
                  return new Text("Loading");
                }
                var userDocument = snapshot.data;
                return new Text(userDocument["card"]['exp_year'].toString());
              },),

Но, очевидно, это не очень практично. Как получить доступ к значению карты, не зная идентификатор документа?

1 Ответ

1 голос
/ 20 мая 2019

Существует два способа получить содержимое документа:

  1. Узнать весь свой уникальный путь.
  2. Сделать запрос к известной коллекции, чтобы получить соответствующие документы.

Если вы не знаете идентификатор, требуемый # 1, вам придется попробовать # 2.Но поскольку у вас, похоже, нет способа отфильтровать документы в этой коллекции, вам придется получить ВСЕ документы.Это, вероятно, не то, что вы хотите сделать для масштабируемости.

Подумайте, как вы хотите найти данные в Firestore, прежде чем писать документы.

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