firebase 如何在不同集合中的文档中的字段发生变化时更新集合中多个文档的Firestore文档字段值

iyr7buue  于 2023-02-09  发布在  其他
关注(0)|答案(1)|浏览(124)

嗨,我有2 Firestore集合命名为
1.产品收集
1.范畴集合
当在产品集合中创建文档时,它会添加一个字段名category,该字段名category是从category集合中的文档中获得的。2(简单地说,当创建一个产品时,我们必须从category集合中选择一个category名称)。
到目前为止,我已经成功地实现了这一点。但现在我的问题是,当更改类别文档中的名称字段(更改类别名称/标题)时,它在类别文档中更改为新名称,但在产品文档中保持不变(因为没有通知相关产品文档类别名称的更改)。
我使用以下代码来更改类别名称

Future<void> updateCategory({Key? key,cid,name}) {
     return categories
    .doc(uid).collection('categoryList').doc(cid)
    .update({'name': name})
    .then((value) => print("Category Updated"))
    .catchError((error) => print("Failed to update category: $error"));}

当我更改类别集合中的类别名称时,如何更新产品文档中的类别名称字段?

xj3cbfub

xj3cbfub1#

没有特定的操作来更新重复的数据。您需要依次更新每个产品文档。通常需要执行以下操作:
1.使用查询查找所有产品文档
1.循环查询快照
1.更新每个产品文档
如果有很多文档需要更新,可以考虑使用What is the fastest way to write a lot of documents to Firestore?

相关问题