Mic*_*nes 4 firebase firebase-realtime-database
目前我正在为我的Firebase数据库进行数据库布局.我正在浏览许多关于布局应该如何看的不同教程,但我对什么是正确的有点困惑.
我不确定用户应该存储的内容,让我举个例子:
{
"users": {
"alanisawesome": {
"nickname": "Alan The Machine"
},
"gracehop": {
"nickname": "Amazing Grace"
}
}
}
Run Code Online (Sandbox Code Playgroud)
在Firebase Legacy文档的上述示例中,他们按用户名存储用户.然而在另一个例子中我发现了以下内容:
{
"users": {
"123": {
"name": "Kato"
},
"234": {
"name": "Anant"
}
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,他们使用UID存储用户.然后,您可以只是push()
新用户,他们的ID是随机密钥,如下所示-JRHTHaKuITFIhnj02kE
.
以上哪个是存储用户的最佳方式?用户名,自定义UID或随机生成的密钥?
Fra*_*len 12
当您拥有一个按时间顺序排序的集合时,Firebase push id非常棒,其中单个项目没有自然键.所以列出了博客文章,聊天消息等.
但是当项目具有自然键时,通常最好将它们存储在该自然键下.用户拥有唯一的ID,通常称为他们的ID uid
.除非您有理由不这样做,否则请将用户存放在他们的下面uid
.通过将它们存储在它们下面uid
,您可以轻松查找给定用户的数据:ref.child('users').child(user.uid)
.如果您将用户存储在生成的密钥(例如推送ID)下,则必须执行查询以查找相同的记录.
您从文档中获得的示例使用不同的命名方案.原因是推送ID和UID都会导致比我们在那时的文档中更多的混淆.这就是为什么我们在这些情况下选择简短易读的键.
归档时间: |
|
查看次数: |
3634 次 |
最近记录: |