#firebase #flutter #google-cloud-firestore #geopoints
#firebase #flutter #google-облако-firestore #географические точки
Вопрос:
Я получаю эту ошибку («Экземпляр ‘GeoPoint), что я хочу получить список массивов Geopoint из Firestore, я все еще не знаю, как это решить, любая помощь будет оценена.
Изображение из Firestore (GeoPoint списка массивов)
Это моя модель класса для получения всего документа из Firestore
class ModelLA{
String nama, kode, alamat, creator, pass, foto;
List<GeoPoint> titikLokasi;
ModelLA.fromMap(Map<String, dynamic> data){
nama = data['nama'];
kode = data['kode'];
alamat = data['alamat'];
creator = data['creator'];
pass = data['pass'];
foto = data['foto '];
titikLokasi = List.from(data['titikLokasi']);
}
}
Вот как мне получить все данные
Firestore.instance.collection('LA').getDocuments().then((value){
value.documents.forEach((element) {
if (value.documents.isNotEmpty){
value.documents.forEach((element) async {
ModelLA modelLA = ModelLA.fromMap(element.data);
});
}
});
Возвращает ошибку:
[Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’, Экземпляр ‘GeoPoint’]
Комментарии:
1. пожалуйста, поделитесь своим другим кодом, где вы получаете
Instance of 'GeoPoint'
2. @PeterHaddad готово, я уже обновил сообщение
3. Это не ошибка, вы сохранили экземпляры GeoPoint в базе данных и извлекаете их, они добавляются сюда
titikLokasi = List.castFrom(data['titikLokasi']);
?4. @PeterHaddad Кстати, я уже пытаюсь перейти с titikLokasi = List.castFrom(data[‘titikLokasi’]); на data[‘titikLokasi’], и ошибка говорит, что ‘Список’ не является подтипом типа ‘Список’
5. @PeterHaddad да, вы можете видеть мое изображение, которое я загрузил
Ответ №1:
Я уже нашел решение для извлечения всех данных из списка GeoPoint, спасибо всем, кто мне помогает, вот как я могу получить данные:
Firestore.instance.collection('LA').getDocuments().then((value){
value.documents.forEach((element) {
if (value.documents.isNotEmpty){
value.documents.forEach((element) async {
ModelLA modelLA = ModelLA .fromMap(element.data);
print('Data: ${modelLA.titikLokasi.map((e) =>
print('lat: ${e.latitude} long: ${e.longitude}'))}');
});
}
});
});
Обращение закрыто