【问题标题】:auto increment Id generator in firebase real-time databaseFirebase实时数据库中的自动增量ID生成器
【发布时间】:2021-07-22 12:48:32
【问题描述】:

我正在使用以 express.js 作为后端的 firebase 实时数据库。 这是我的数据保存 sn-p 代码:

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 的数据,我该怎么办?

【问题讨论】:

    标签: node.js firebase express firebase-realtime-database nosql


    【解决方案1】:

    因此,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;
    
    

    您可以查看here了解更多详情。

    或者,如果您想创建类似于 Mongo 所做的那样,那么您应该创建一个自定义的,创建一个类似 Mongo 所做的密钥并将其保存在数据库中,并在每次新插入时将该 ID 添加到模型中。您可以查看here

    【讨论】:

      猜你喜欢
      • 2019-09-02
      • 2021-08-24
      • 1970-01-01
      • 2022-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      相关资源
      最近更新 更多