我想开始使用Firebase。
我将从一个简单的漫画数据库开始。
哪种结构最好?
备注结构1:我如何获得系列列表?
备注结构2:太靠近sql数据库了吗?
结构1:
{
"comics" : {
"1" : {
"serie" : "Batman",
"nr" : "1",
"title" : "Title of issue 1"
},
"2" : {
"serie" : "Batman",
"nr" : "2",
"title" : "Title of issue 2"
},
"3" : {
"serie" : "Spiderman",
"nr" : "1",
"title" : "Title of issue 1"
}
}
}
结构2:
{
"issues" : {
"1" : {
"serie" : "1",
"nr" : "1",
"title" : "Title of issue 1"
},
"2" : {
"serie" : "1",
"nr" : "2",
"title" : "Title of issue 2"
},
"3" : {
"serie" : "2",
"nr" : "1",
"title" : "Title of issue 1"
}
},
"series" : {
"1" : {
"title" : "Batman"
},
"2" : {
"serie" : "Spiderman"
}
}
}
答案 0 :(得分:2)
我首先会在文档中查看this page。
然后根据Jay的建议,允许firebase为您的记录生成唯一的密钥。
记录每个series
,作为一个孩子,您可以保留一份清单
其相关剧集。
记录每个episode
,在这里您可以保留更多详细信息
关于它(年,演员,评级等)。如果需要,您甚至可以跟踪它所属系列的ID。
您的数据结构可能如下所示:
{
"series": {
"58371074b694fc9c35ec8891": {
"name": "Batman",
"episodes": {
"583710741ffbf07cfccf7ba2": true,
"58371074539dde71b245d5a1": true,
"583710744b14fd3a654a6d75": true
}
},
"58371074898bed03d73cd12c": {
"name": "Spiderman",
"episodes": {
"58371074b63304e2617b558e": true
}
}
},
"episode": {
"583710741ffbf07cfccf7ba2": {
"name": "Batman Begins"
},
"58371074539dde71b245d5a1": {
"name": "Batman Returns"
},
"583710744b14fd3a654a6d75": {
"name": "Batman Forever"
},
"58371074b63304e2617b558e": {
"name": "The Amazing Spider-Man"
}
}
}
注意:显然上面示例中的键并未由firebase生成,但您可以了解数据结构的外观。