Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase是否完全避开节点?_Firebase_React Native_Firebase Realtime Database - Fatal编程技术网

Firebase是否完全避开节点?

Firebase是否完全避开节点?,firebase,react-native,firebase-realtime-database,Firebase,React Native,Firebase Realtime Database,根据这篇文章,我们应该避免嵌套数据。考虑到这一点,我想知道对于我的数据库来说,存储然后查找这些数据的最佳做法是什么 我必须储存一些“活动”。每个“活动”属于一个“概念”,每个“概念”属于一个“类型”。 记住这一点,存储所有活动以便快速访问的最佳方式是什么 "Type_1" : { "Notion_1" : { "Activity_1" : "....", "Activity_1" : "...." }, "Notion_2" : {

根据这篇文章,我们应该避免嵌套数据。考虑到这一点,我想知道对于我的数据库来说,存储然后查找这些数据的最佳做法是什么

我必须储存一些“活动”。每个“活动”属于一个“概念”,每个“概念”属于一个“类型”。 记住这一点,存储所有活动以便快速访问的最佳方式是什么

"Type_1" : {
    "Notion_1" : {
        "Activity_1" : "....",
        "Activity_1" : "...."
    },
    "Notion_2" : {
        "Activity_1" : "....",
        "Activity_2" : "...."
    }
},
"Type_2" : {
    "Notion_1" : {
        "Activity_1" : "....",
        "Activity_1" : "...."
    },
    "Notion_2" : {
        "Activity_1" : "....",
        "Activity_2" : "...."
    }
}
}

我想用这个来获取数据

firebase.database().ref("/main/" + activityUID).once('value', function(snap) {...}
其中activityUID是
[“类型\概念\活动\ 1”]
[“类型\概念\活动\ 1”]


这是一个好方法吗?谢谢大家!

虽然该指南确实指出要避免嵌套数据,但它也提供了何时避免嵌套数据的示例,而不是完全避免嵌套数据。在许多情况下,嵌套数据是一种适当的结构。它完全取决于您的用例,所以不要因为数据看起来很酷就去规范化它。应该有这样做的理由。不幸的是,没有办法回答你的问题“快速访问”是主观的,基于对数据的处理。最好的结构也是基于对数据的处理。如果您能提供详细信息和一些代码,我们可能会提供帮助。正如Jay所说:“什么样的数据结构最好”没有单一的答案,因为这完全取决于您的应用程序的使用情况。为了更好地介绍本主题,请阅读并查看。虽然指南中确实提到了避免嵌套数据,但本指南还提供了关于何时避免嵌套数据的示例,而不是完全避免嵌套数据。在许多情况下,嵌套数据是一种适当的结构。它完全取决于您的用例,所以不要因为数据看起来很酷就去规范化它。应该有这样做的理由。不幸的是,没有办法回答你的问题“快速访问”是主观的,基于对数据的处理。最好的结构也是基于对数据的处理。如果您能提供详细信息和一些代码,我们可能会提供帮助。正如Jay所说:“什么样的数据结构最好”没有单一的答案,因为这完全取决于您的应用程序的使用情况。要获得关于该主题的良好介绍,请阅读并查看。
firebase.database().ref("/main/" + activityUID).once('value', function(snap) {...}