道歉,如果这已经在某个地方得到了解答,因为这似乎是一件很常见的事情,但我在这里或文档中找不到答案,所以这里就是这样。
我想知道如何使用Firebase为推送项目指定名称。基本上我想要这个结果: “群组” - >组名称 - > “会员” - >会员姓名
但我有这个: “群组” - > “-JXEy7nfYGsMkdzsK9km” - > “-JXEw_eoCzj_VgqYkJS8” - >会员姓名
我确信这是您需要回答的所有信息,但为了防止需要更多详细信息,我将在下面添加更多信息。
以下是我的代码。基本上是有人创建一个新组并将该人分配给该组。
var createGroup = function(){
var newGroup = groupRef.push({
"Name" : newGroupName.val()
});
var groupID = newGroup.name(); //Gets group name, doesn't take arguments
var owner = groupRef.child(groupID).push({
"Name" : currentUser
});
正如你所看到的,我可以得到已被推送的名称,但我无法弄清楚如何将其设置为其他内容。
答案 0 :(得分:2)
您正在调用push()
,这会生成唯一的密钥和子位置。
您要做的是致电set()
,这将在该位置添加数据。
var createGroup = function() {
var newGroup = groupRef.push({
"Name" : newGroupName.val()
});
var groupID = newGroup.name();
var owner = groupRef.child(groupID).set({ // <-- change to set
"Name" : currentUser
});
};