首页 > 解决方案 > 没有为“查询”类型定义方法“updateData”。Futter, Cloud Firestore

问题描述

我想根据查询更新文档中的数据。这是我的代码:

Firestore.instance
    .collection("Categories")
    .where("userEmail", isEqualTo: "${user?.email}")
    .updateData({"category_budget_remaining": _remainingCategoryBudget2})
    .then((value){});

我收到以下错误:没有为“查询”类型定义方法“updateData”

标签: firebasefluttergoogle-cloud-firestore

解决方案


where()您需要获取文件后进行更新

where(...).getDocuments().then((val)=> 
   val.documents.forEach((doc)=> {
     doc.reference.updateData({...})
   });
});

此代码选择并更新所有符合 where 条件的文档。如果您只想为 1 个文档执行此操作,则只需添加.limitTo(1)before getDocuments()


推荐阅读