如何删除 Cloud Firestore 中的复合索引?

Posted

技术标签:

【中文标题】如何删除 Cloud Firestore 中的复合索引?【英文标题】:How to delete composite indexes in Cloud Firestore? 【发布时间】:2021-06-26 00:01:38 【问题描述】:

文档说: https://firebase.google.com/docs/firestore/query-data/indexing

删除索引:

Go to the Cloud Firestore section of the Firebase console.
Click the Indexes tab.
Hover over the index you want to delete and select Delete from the context menu.
Confirm that you want to delete it by clicking Delete from the alert.

在当前的 Cloud Firestore 上,

右子菜单可以删除单个字段索引 但悬停不起作用,复合索引部分不存在子菜单

我只找到了一个控制台命令来删除所有为 firestore db 编制索引的命令

【问题讨论】:

【参考方案1】:

我在 Firestore UI Web 面板上遇到了同样的问题,但我找到了使用云的解决方案。

首先你需要输入https://console.cloud.google.com/并在打开gcloud终端后选择你的项目(你可以在你头像附近的右上角访问它)。

打开终端类型后

gcloud firestore indexes composite list

列出所选项目的所有复合索引

然后选择您要删除的ID并输入

gcloud firestore indexes composite delete <composite-id>

它会要求你确认,一旦你输入y你的索引就消失了c:

【讨论】:

【参考方案2】:

在 Cloud Firestore UI 网页面板中,带有 3 个垂直点的图标由于某种原因被隐藏了。如果您将鼠标悬停在该行的右侧,就在状态字段的右侧,将显示 3 个垂直点图标,将鼠标悬停在该图标上将显示删除集合的复合索引的选项。

【讨论】:

确实悬停现在出现了 3 个垂直点,但以前不是这样。我想问题已经解决了。 这应该被选为正确的答案!

以上是关于如何删除 Cloud Firestore 中的复合索引?的主要内容,如果未能解决你的问题,请参考以下文章

从Firebase的Cloud Firestore删除文档是否会删除该文档中的所有子集合?

如何使用 Flutter 在 Firestore 中删除集合中的所有文档

Cloud Firestore 中多租户的命名空间

如何删除 DocumentSnapshot 事件的侦听器(Google Cloud FireStore)

在 Cloud Firestore 中如何制作一个,只创建一次安全规则

如何按创建日期而不是名称对 Cloud Firestore 集合中的文档进行排序?