【发布时间】:2019-11-17 15:02:36
【问题描述】:
我正在使用颤振和 firebase 做一些工作,所以我不知道如何将新元素添加到现有文档中,该文档具有带有一些已创建字段的现有地图,所以......例如地图就是这样
'Users':{uid0:{'Name':{'userName0'},uid1:{'Name':{'userName1'}}
这是我的实际代码。
Firestore.instance.collection('on_going_matches').where('userSlot',isGreaterThan: 0).snapshots().listen(
(data) => {
Firestore.instance.runTransaction((transaction) async {
await transaction.update(Firestore.instance.collection("on_going_matches").document(data.documents[0].documentID), {
'users': {uid:{'Name':name}},
'userSlot': data.documents[0]['userSlot'] - 1
}
);
})
});
我还有另一个问题,当找不到“where”条件 "where('userSlot',isGreaterThan: 0)" 时我能做什么,我如何像 if/else 语句一样使用它,所以,如果找不到 Firestore 查询,做一件事。
【问题讨论】:
-
更新现有文档:myDocument.setData(myMap, merge: true);
-
是的,谢谢,我试图通过交易来做到这一点......但我意识到我不能
-
很高兴听到这个消息。请为我的遮阳篷投票 :)
标签: flutter dart google-cloud-firestore