当前位置: 首页 > 知识库问答 >
问题:

合并为真的火力恢复文档更新

谢昂雄
2023-03-14

今天在使用Admin SDK开发Cloud Firestore时,我无意中忘记了替换。使用更新。设置了merge true选项,令我惊讶的是,查询成功了,文档也创建了。我删除了合并:true,然后我得到了文档不存在错误。我用merge:true再次测试了它,并再次创建了文档。我在文档中找不到有关此的任何内容。有人能解释这种行为吗。

let query = userRolesRef
           .doc(user).update(
                    {
                      isDeliveryPerson:true
                    },
                     { merge: true }
                );

共有1个答案

严亮
2023-03-14

使用<代码>之间没有区别。更新和。为集合中已存在的文档设置“合并为真”选项。这两种操作之间的区别仅适用于不存在的文档。例如,<代码>。在使用和时,如果文档不存在,则设置“带合并为真”选项将创建文档。更新,操作将失败。

 类似资料:
  • Firebase Firestore的成本基于读取操作的数量。如果我下载一个包含不止一个子文档的高级文档(比如下载一个在Firebase实时数据库中包含不止一个子节点的父节点)。)那么会被认为是单读还是多读呢?我在文档中没有找到任何关于这一点的内容。请解释一下?

  • 尝试在我的项目中使用FiRecovery。我的项目是一个全新的项目,但在我的设备上运行应用程序时遇到问题而没有收到错误:任务“: app: mergeDexDebug”执行失败。 我的应用程序正在使用AndroidX。我已经添加了我的谷歌服务。json文件,遵循步骤等。 Yaml文件: android/build。格拉德尔: 完全错误: 失败:构建失败,但有例外。 错误:任务:app:mergeD

  • 我有一个布尔值,我需要设置一个基于这个布尔值的条件。我试图得到这个布尔值,然后用它在我的FutureBuilder,但我总是得到空,即使我可以看到值是在火还原。请帮助。 小装置

  • 我不知道如何监听Firestore db中的更改和更新中的项。 其中包括聊天模型、活动和适配器。 一旦值“isseen”更改为“true”,它就应该显示在发件人的电话上。

  • 我的问题是“另存为”对话框。如果我保存为一个不存在的复合文档,那么一切都很好。如果我双击一个现有的复合文档,那么我的代码会询问您是否要覆盖它,这也很好。 但是,错误的是,如果您键入现有复合文档的名称并单击save,它就像您单击cancel一样。 我使用FileFilter和FileView来配置所有文件的显示和过滤。 null (无论如何,在我看来)这是错误的。它应该返回APPROVE_OPTIO

  • 我想要一个帮助来解决这个问题。在pubspec中插入cloudfirestore依赖项后,我无法构建flutter应用程序。亚马尔 错误说明: 失败:构建失败,有一个异常。 错误:无法确定任务“:app:compiledBugJavaWithJavaC”的依赖项。无法解析配置“:app:debugCompileClasspath”的所有任务依赖项。无法解析io。grpc:grpc核心:[1.21.