这就是我的函数编辑特定记录的方式
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 语句确实运行,这意味着它能够获取该特定记录。不知道为什么我无法更新。
您的代码首先查询“课程”集合,然后尝试更新“课程”集合中的文档。 这些名字不匹配。 我们看不到您的数据库,因此我们不知道您是否有一个“课程”集合,其文档 ID 与“课程”集合匹配。