据我所知,firebase会自动为数据库中的每个新条目分配一个唯一的ID。然而 - 这些ID真的很长而且不好看。
更多 - 我必须以某种方式引用它们,所以当前我正在做一个获取请求,例如获得一个条目我做了类似的事情:
/getEntry/L4Cu7UOENIivnB2bgt
这很好,因为用户无论如何都看不到它。 Hovewer ,在为我的应用中的每个条目制作路线时,我必须再次通过它的ID引用特定条目。所以例如如果我在指定元素的路线上,例如:
http://myapp.com/users/L4Cu7UOENIivnB2bgt
- 如果不丑,它看起来不太好。如果我要在我的数据库中SQL或NoSQL,我可以自己分配一个id,因此它会从1
增加,依此类推。
问:我能以某种方式改变这些长id
吗?它必须以某种方式修复......谢谢。
答案 0 :(得分:1)
是的,您可以设置自己的唯一密钥。假设您拥有每个用户的唯一用户名,那么您可以
firebase.database().ref('users/' + userName).set({
firstName: name,
email: email,
profile_picture : imageUrl
});
或者您可以创建自己的唯一ID并使用。但是没有自动增量ID。
使用set()覆盖指定位置的数据,包括任何子节点。