首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Flutter -如何向firebase集合中的所有文档添加字段

Flutter -如何向firebase集合中的所有文档添加字段
EN

Stack Overflow用户
提问于 2021-06-01 13:51:16
回答 2查看 238关注 0票数 0

我正在使用扑翼火力基地。我想要一个查询向firebase集合中的所有文档添加一个键和值。

我尝试使用批量写入,但它添加了一个包含字段的新文档。而不是合并到现有文档。

代码语言:javascript
运行
复制
var db= Firestore.instance();
var batch = db.batch();
batch.setData(
db.collection("users").document(),
{"status": "Approved"}
);

当我试图给出像document('id')这样的文档Id时,它只添加到该文档中。

我试了很多次,看了YouTube视频,但现在还是找不到。请帮帮我!

EN

回答 2

Stack Overflow用户

发布于 2021-09-02 07:10:39

在应用程序中的一个页面上创建一个虚拟按钮。按下该按钮应将该字段添加到特定集合的所有文档中。

在这里,我使用IconButton在“users”集合中添加了一个名为“bio”的空字段。

在文档中添加字段后,您可以删除该按钮,因为这是您(开发人员)的问题,而您的应用程序用户不需要该按钮。

代码语言:javascript
运行
复制
IconButton(
                      onPressed: () {
                        FirebaseFirestore.instance
                            .collection('users')
                            .get()
                            .then(
                              (value) => value.docs.forEach(
                                (element) {
                                  var docRef = FirebaseFirestore.instance
                                      .collection('users')
                                      .doc(element.id);

                                  docRef.update({'bio': ''});
                                },
                              ),
                            );
                      },
                      icon: Icon(Icons.done),
                    ),
票数 1
EN

Stack Overflow用户

发布于 2021-06-01 21:37:27

这是因为您使用的是setData()方法,而应该使用updateData()来更新:

代码语言:javascript
运行
复制
var db= Firestore.instance();
var batch = db.batch();
batch.updateData(
db.collection("users").document(),
{"status": "Approved"}
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67783333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档