У меня есть ScopedModel, которая интегрирована с FireStore в флаттер.Всякий раз, когда я добавляю или обновляю запись в FireStore, данные обновляются и каждый раз добавляются дублированные значения в модель.Как удалить существующее значение до перезагрузки FireStore то же самое.
ScopedModel - для загрузки начальных значений
Firestore.instance
.collection('categoryMaster')
//.where('isActive', isEqualTo: true)
.orderBy('categoryCode')
.snapshots()
.listen((data) {
data.documents.forEach((doc) {
finalData.add(Category.map(doc));
});
}).asFuture();
Попытка обновить значение в подклассах, После обновления снова те же значения, добавленные в модель.Например, если у меня есть 5 записей как [a, b, c, d, e] после обновления, еще 5 значений добавляются в тот же список [a, b, c, d, e, a, b, c, d, e]
Firestore.instance.collection('categoryMaster')
.document(category[index].field1)
.updateData({
"isActive": category[index].isActive
? false
: true
}).whenComplete(() {
setState(() {
print(category.length);
});
}).catchError((e) {
print(e);
});
как избежать дублирования значений модели?