如何在没有帖子密钥的情况下将新数据添加到firebase?

时间:2017-09-11 00:13:56

标签: javascript firebase firebase-realtime-database

我使用以下代码将新数据添加到firebase。

docker-compose down

我想要做的是在子" NSN"中创建一个NSN列表。没有唯一生成的帖子ID。但是所有尝试仅将NSN添加到子NSN的尝试仍然用新的NSN替换旧的NSN。所以,而不是像10个不同的NSN,我只有1,这是最新添加的。 我最初使用这段代码

var postData = {
            NSN: NSN,
            ProductName: ProductName,

            AssociatedContractNumber: AssociatedContractNumber,
            ItemQuantity: ItemQuantity,
            viewable_by: uid,
        };

        InventoryID = firebase.database().ref().child('Posts').push().key;

        var updates = {};
        updates['/Businesses/' + uid + '/Inventory/' + InventoryID] = postData;

以上只用新的号码替换现有号码而不是添加新号码

我也试过这个

var postNSN = {
            NSN: NSN,
         };
       updates['/Businesses/' + uid + '/National_Stock_Numbers/' + NSN] = postNSN;

但没有任何反应。如何在没有唯一生成密钥的情况下向子NSN添加新的NSN?

1 个答案:

答案 0 :(得分:1)

只需使用push()

即可

假设你有和NSN对象一样

var NSN = { ... }
firebase.database().ref().child('Posts').push(NSN);

执行此操作将始终将项目推送到NSN阵列的末尾,而firebase将在推送时创建唯一键。

请记住,firebase不知道它只知道对象的数组。