Я создал две коллекции следующим образом: users - documentId (uid from auth) - поля и и sub collection (местоположения)
возможности - (автоматически сгенерированный идентификатор документа) - Fields (Одно из полей locationDocumentId из коллекции выше)
Я получаю возможности в виде потока, в котором я создал карту в классе Opportunity.
Я хотел бы иметь ссылку на объект Location в классе Opportunity и заполнять объект при получении возможностей.
Я очень новичок в Firestore и Flutter и застрял здесь.
Пожалуйста, посоветуйте, как мне это сделать sh.
Спасибо.
Код чтобы получить возможности
// ALL Opportunities
Stream<List<Opportunity>> get opportunities {
return _oppRef
.orderBy('lastUpdated', descending: true)
.snapshots()
.map(_allOpportunitiesFromSnapshot);
}
List<Opportunity> _allOpportunitiesFromSnapshot(QuerySnapshot snapshot) {
return snapshot.documents.map((doc) {
return Opportunity.fromMap(doc.data, doc.documentID);
//HERE I WANTED TO ADD CODE TO GET LOCATION AS
//var opp = Opportunity.fromMap(doc.data, doc.documentID);
// opp.location ???
}).toList();
}
//
Future<DocumentSnapshot> getLocation(
String locationId, String createdBy) async {
return await _docRef
.document(createdBy)
.collection('locations')
.document(locationId)
.get();
}