【问题标题】:How to include child resources in Firebase API call如何在 Firebase API 调用中包含子资源
【发布时间】:2017-03-16 01:23:20
【问题描述】:

我有一个具有以下结构的 Firebase 数据库

  • 故事
  • 卡片
  • 照片
  • 用户

相对而言,每个故事都有多张卡片,而卡片又包含多张照片。

是否可以使用 Firebase REST API,这样当我调用 API 来获取故事列表时,它还会包含相关的子卡片和照片?

https://[project].firebaseio.com/stories.json?print=pretty

请注意,在 firebase 数据库中,这些不是嵌套在父级中,而是作为单独的列表。

【问题讨论】:

  • 一张卡片可以用于多个故事,同样,一张照片可以用于多张卡片吗?还是都是1-1?
  • @Jay 不,一张卡片或照片只属于一个故事
  • 我对 NoSQL 的非规范化和“越扁平越好”很感兴趣。但是,在这个用例中,您可能需要考虑将卡片和照片作为故事节点的子节点,这样当您阅读故事时,您就会拥有问题中指定的所有数据。
  • 听起来像是杰伊的回答。 :-)

标签: json rest firebase firebase-realtime-database


【解决方案1】:

除非有更多信息,否则从您的评论中,您的数据似乎都是 1-1 关系,在这种情况下,没有理由将其分开。

因此构建您的数据

Stories
  Cards
  Photos
Users

当您加载故事时,它会加载随附的卡片和照片,因此一旦观察,您就会得到所需的一切。

话虽这么说...当数据具有 1-1 关系以外的任何其他关系或者它比这个问题更复杂时,非规范化通常是一种方法。

【讨论】:

    猜你喜欢
    • 2011-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-20
    • 2019-12-01
    • 1970-01-01
    • 2016-12-18
    • 1970-01-01
    相关资源
    最近更新 更多