如何在flutter中更新存储在cloud firestore中的记录

问题描述 投票:0回答:1

这就是我的函数编辑特定记录的方式

Future<void> updateCourse(Course updatedCourse) async {
QuerySnapshot courseQuery = await FirebaseFirestore.instance
        .collection('Courses')
        .where('title', isEqualTo: updatedCourse.title)
        .get();

    if (courseQuery.docs.isNotEmpty) {
      DocumentSnapshot docSnapshot = courseQuery.docs.first;
      final docId = docSnapshot.id;
      await FirebaseFirestore.instance
          .collection('Course')
          .doc(docId)
          .update({'title': 'This is Pratham'});
    } else {
      print("There is some problem");
    }
  }

我不确定出了什么问题,但我不断收到错误“找不到某些请求的文档”。

如果有人可以帮助解决此错误,这将非常有帮助。 if 语句确实运行,这意味着它能够获取该特定记录。不知道为什么我无法更新。

flutter firebase google-cloud-platform google-cloud-firestore
1个回答
0
投票

您的代码首先查询“课程”集合,然后尝试更新“课程”集合中的文档。 这些名字不匹配。 我们看不到您的数据库,因此我们不知道您是否有一个“课程”集合,其文档 ID 与“课程”集合匹配。

© www.soinside.com 2019 - 2024. All rights reserved.