我正在使用ajax帖子将新的数组信息添加到我在Firebase中已经存在的json对象中,帖子一切正常,但它没有增加索引值,它只是使用了一组随机的字符我可以看到。
为什么要这样做?如何将其更改为从之前的索引值开始?
我的邮政编码......
$.ajax({
type: 'POST',
url: "blahblahblah.json",
data: JSON.stringify({
FIELD2: $('#title').val(),
FIELD3: $('#author').val(),
}),
error: function(e) {
console.log('%c Epic Fail', 'color: #fff; font-weight: bold;background:red;padding:20px;');
},
success: function(data){ // A function to be called if request succeeds
console.log('%c Hazaaaa', 'color: #fff; font-weight: bold;background:lime;padding:20px;');
},
dataType: "json",
contentType: "application/json"
});
这就是我的json如何看待新信息的更新。
84:{FIELD1: "6656640", FIELD10: "The Folio Society", FIELD11: "Hardcover", FIELD12: "304", FIELD13: "2005", …}
85:{FIELD1: "168668", FIELD10: "Simon & Schuster ", FIELD11: "Paperback", FIELD12: "453", FIELD13: "2004", …}
86:{FIELD1: "100915", FIELD10: "HarperCollins Publishers", FIELD11: "Paperback", FIELD12: "206", FIELD13: "2005", …}
-LBaSxkTucRyHqfqEdDI:{FIELD2: "TEST TITLE", FIELD3: "TEST AUTHOR"}
-LBaXDRfe3tjZEBoJwHy:{FIELD2: "dave", FIELD3: "smith"}
答案 0 :(得分:1)
Firebase数据库建议不要使用序号进行索引。要详细了解原因,请参阅Best Practices: Arrays in Firebase。
当您向Firebase数据库REST API发送POST
谓词时,它会创建一个新的子节点,其中包含所谓的推送ID作为密钥。这些是您看到的-LBaSxkTucRyHqfqEdDI
之类的值。
Firebase数据库没有内置支持来生成顺序数字索引。如果你坚持使用它们,你将不得不自己动手。这意味着您将有两个选择:
如果这听起来比您想要的复杂且更复杂:这是Firebase建议不使用数字顺序索引并且没有内置操作的众多原因之一。