我使用的是以express.js为后台的firebase实时数据库。这是我的数据保存片段代码:
const db = require('./firebase_connection').firebaseDatabase
async function saveData(req, model) {
await db.ref(model).set(req)
return {"statusCode": "201", "message": "Inserted successfully"}
}
module.exports = { saveData }
这是json输出:
{
"user" : {
"email" : "TEST77@TEST.com",
"full_name" : "Hossein Heydari",
"password" : "test",
"phone_number" : 54,
"role" : "client"
}
}
但我也需要一个Id自动添加到数据库中,就像MongoDB
有_id
一样
我需要firebase来为任何模型存储具有自动递增Id的数据,我该怎么办?
因此,firebase确实提供了一种在您推动更改时获得唯一密钥的方法,我不确定您是否尝试过:
postsRef.push({
author: "gracehop",
title: "Announcing COBOL, a New Programming Language"
});
// Generate a reference to a new location and add some data using push()
var newPostRef = postsRef.push();
// Get the unique key generated by push()
var postId = newPostRef.key;
您可以在此处查看更多详细信息。
或者,如果你想创建类似于Mongo的密钥,那么你应该创建一个自定义密钥,像Mongo一样创建一个类似的密钥,并将其保存在数据库中,在每次新插入时将该ID添加到模型中。你可以在这里查看。