加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

数据库 – Firebase – 使用云功能定位特定的Firestore文档字段

发布时间:2020-12-12 07:26:06 所属栏目:MsSql教程 来源:网络整理
导读:将Cloud Functions与Firebase实时数据库一起使用时,您可以使用云功能定位特定字段.例如,给定此 JSON结构,我可以定位user1的电子邮件字段是否使用(‘/user/{userId}/email’).onUpdate云功能更改. { “user”:{ “user1”:{ “名字”:“John Doe”, “电话
将Cloud Functions与Firebase实时数据库一起使用时,您可以使用云功能定位特定字段.例如,给定此 JSON结构,我可以定位user1的电子邮件字段是否使用(‘/user/{userId}/email’).onUpdate云功能更改.

{
“user”:{
“user1”:{
“名字”:“John Doe”,
“电话”:“555-5555”,
“email”:“john@gmail.com”
}
}
}

现在使用Firestore,我似乎无法定位特定字段,只能定位文档.如果是这种情况,定位电子邮件字段的Firestore云功能必须看起来像这样(‘/ user / {userId}’).onUpdate,并且每次用户集合中的任何文档发生更改时都会触发.这将导致大量浪费的云功能触发.这是Firestore的工作方式吗?它有一个优雅的工作吗?

解决方法

您是对的,由于不同的数据模型,Cloud Firestore仅允许您在文档级事件而不是字段级别上触发云功能.

一种方法是将电子邮件存储在单独的文档中(例如,在称为电子邮件的子集合中),因此更新电子邮件仅仅是将触发的更改.这确实需要您在每次需要电子邮件时阅读额外的文档.

另一种类似的方法是将它保存在同一文档中,但也将其写入子集合作为第二次写入以触发该函数.使用电子邮件作为我的文档,并在文档中有一个时间戳字段,以便于清理旧文档(选择最旧的电子邮件文档删除,甚至可能在函数中)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读