问题标签 [google-cloud-firestore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4719 浏览

firebase - Cloud Firestore - 实时侦听器更新算作读取操作吗?

假设我正在听一个文件:

根据Firestore 计费政策,每次更新数据是否都算作读取操作,或者侦听行为本身是否算作?

另外,假设我正在听一些文件:

是否会立即对与查询匹配的所有文档或每个文档的每次更新(或两者兼而有之)收取读取操作的费用?

0 投票
4 回答
8791 浏览

firebase - 将 Firebase 实时数据库迁移到 Firestore

我正在寻找将使用 firebase 实时数据库的应用程序数据库迁移到新的 Cloud Firestore 数据库的最佳方法。我对我正在从事的项目充满信心,我不需要进行任何数据模式更改,所以我几乎只是尝试 1-1 映射它。Firebase 在他们的网站上建议只编写一个脚本来执行此操作,但我不确定最好的方法。有没有人已经制作了一个脚本来完成这个?

0 投票
1 回答
5360 浏览

firebase - 设计具有多对多和跨实体关系的 Cloud Firestore 架构

关于设计 Firestore 架构的简单问题:

我知道您必须使用正确的工具来完成这项工作,而且 Firestore 不应该是关系数据库,但是是否有建议的技术来建模多对多关系?

前任:

我想建立一个物业管理应用程序

公司拥有包含单位的财产。层次结构在这里很简单。

因此,随着时间的推移,租户将租用多个单元,并且随着时间的推移,每个单元将有许多租户。所有这些都由将 1 个单元与 1 个或多个租户联系在一起的租约封装。

我猜单元可以拥有租约,但是随着时间的推移,租户如何查看他们的所有租约。租约是否应该有一个引用租户的子集合。租户是顶级的吗?

只是寻找一些基本的建议..

还是仅将 GraphQL 与关系数据库一起使用会更好?

0 投票
11 回答
96603 浏览

firebase - Firestore 查询子集合

我以为我读到您可以使用新的 Firebase Firestore 查询子集合,但我没有看到任何示例。例如,我通过以下方式设置 Firestore:

  • 舞蹈[收藏]
    • 舞名
    • 歌曲[收藏]
      • 歌名

我如何能够查询“查找所有歌曲名称 == 'X' 的舞蹈”

0 投票
5 回答
21549 浏览

java - Firestore 查询文档以字符串开头

是否可以查询 firestore 集合以获取以特定字符串开头的所有文档?

我已经浏览了文档,但没有找到任何合适的查询。

0 投票
2 回答
6821 浏览

android - 检查用户是否存在于 Firestore

我想在 Cloud Firestore 中创建一个用户数据库,并将电子邮件作为每个用户的唯一 ID。用户应该在一个collection,每个用户都是一个document

这是我检查用户是否存在于登录活动中的方式:

数据库为空,如您所见:

在此处输入图像描述

我的问题是,它document永远不会为空,即使数据库是空的。显示toast字符串值为documentCOM.GOOGLE.FIREBASE.FIRESTORE.DOCUMENTSNAPSHOT@8ED6B96

这是正确的方法吗?我能做些什么来修复它?

0 投票
1 回答
1628 浏览

javascript - 如何为静态托管网站设置 Cloud Firestore

Firestore 文档仅显示了如何使用设置 Firestore firebase-admin,在我看来这基本上是一个服务器端解决方案。即使我们谈论的是使用 Cloud Functions,它仍然是一个迷你服务器,在浏览器和数据库之间有一个额外的抽象层。我试图弄清楚如何进行与直接从浏览器代码访问实时数据库类似的设置。

进入YouTube 5 分钟:开始使用 Web 上的 Cloud Firestore | 谷歌提供的完整教程,我看到使用的正是这种类型的配置,除了现在初始化应用程序后,我们调用firestore()方法而不是database()方法来获取根引用。

我已经在打开 firestore 的情况下重新初始化了项目,并且当前设置了项目规则以允许任何人访问它。但对我来说,该firebase()方法不包含在我的 firebase 实例中。

我还尝试创建一个 100% 全新的项目,以确保问题不是由实时数据库安装中残留的旧设置引起的。但是我对新项目有同样的问题。我的 firebase 实例以一个database()方法结束,但没有firestore()方法。

0 投票
1 回答
307 浏览

firebase-security - 正则表达式不匹配 - Firestore

我正在检查是否有任何用户角色是文档允许角色的一部分。由于用户是 admin+ editor,因此以下内容应该匹配,并且帖子允许 publisher+ editor阅读:

这是它在正则表达式测试器中的工作:https ://regex101.com/r/bDXMg3/2/

但这不匹配,有什么想法吗?

0 投票
1 回答
2267 浏览

database - Firebase - 使用 Cloud Functions 定位特定的 Firestore 文档字段

将 Cloud Functions 与 Firebase 实时数据库一起使用时,您可以使用云函数定位特定字段。例如,给定这个 JSON 结构,我可以定位 user1 的电子邮件字段何时使用('/user/{userId}/email').onUpdate云函数更改。

{ "user": { "user1": { "name": "John Doe", "phone": "555-5555", "email": "john@gmail.com" } } }

现在使用 Firestore,我似乎无法定位特定字段,只能定位文档。如果是这种情况,以电子邮件字段为目标的 Firestore 云函数必须如下所示 ('/user/{userId}').onUpdate,并且每次user集合中的任何文档发生更改时都会触发。这将导致大量浪费的云函数触发。这是 Firestore 的工作方式吗?是否有一个优雅的解决方法?

0 投票
1 回答
658 浏览

database - Google Firestore 数据组织

正如我所见,Cloud Firestore 及其集合为我们提供了更多组织数据的能力。我认为,对于我和其他许多人来说,有一个基本问题。

存储主细节关系的更好方法是什么?

像这样:一个“CARS”集合,其中包含具有“MAKE”属性的文档。

我认为我需要一个“CARS”系列和一个“MAKES”的独立系列。

有什么想法吗 ?