如何在firebase数据库

时间:2016-10-27 13:44:44

标签: firebase firebase-realtime-database firebase-authentication

我们有问题。我们对firebase很安静,并且在尝试在新数据库中获取一些FK(或其他数据库的引用)时遇到了一些问题。

firebase

在现场用户中我希望获得对表用户的引用。因此,当我尝试从表帐户&检查用户ID我应该能够获得user_tracklist而不是2个查询

2 个答案:

答案 0 :(得分:2)

您可以将tracklist节点保存在accounts/{accountId}/user内,这样您就可以拥有tracklist的两个副本,一个在用户内部,另一个在帐户端点内。

在端点accountId内还保存users,以便在trackinglist实体发生某些更改时能够更新端点accounts/{accountId}/user/trackinglisttrackinglist的重复项

答案 1 :(得分:0)

请离开relational DB世界。 firebase-database没有JOIN,WHERE子句的概念。它适用于JSON Objects的概念。

请记住:

  1. Firebase建议您尽可能地对数据进行非规范化。她喜欢重复数据

    参考:Denormalizing Your Data is Normal

  2. Firebase使用Sockets,您建立了一次连接,然后管道您的查询(给我一个帐户,现在带给我该帐户的用户,等等等等)。因此,如果您需要,请不要担心多次查询。

  3. Refer to this SO Question

    在您的数据结构中,您尝试对数据进行展平/非规范化,但

    改变这个:

    user:"{deftones:true}"
    

    要:

    -user
       -deftones:true
    

    要了解如何检索参考数据,您必须查看我上面提到的文章