【问题标题】:how to generate custom push id in firebase如何在firebase中生成自定义推送ID
【发布时间】:2018-07-07 18:47:50
【问题描述】:

我想用我的自定义推送 ID 将数据保存在 firebase 数据库中。我不想使用 firebase 生成的推送键,因为我很难在需要时将其检索回来。有人知道如何保存我的具有自定义自动生成的firebase数据库密钥的数据。我已经用谷歌搜索了足够多的信息,但没有找到任何合适的解决方案

正如您在上图中看到的那样,我想用 id 44、45、46 等保存我的新记录,但是当我推送数据时,firebase 会生成我不想要的 id。否则,如果有人知道我该怎么做如果我想从数据库中更新或删除特定记录,请检索此 firebase 生成的 id。 任何帮助将不胜感激

【问题讨论】:

    标签: javascript angular firebase-realtime-database ionic3


    【解决方案1】:

    要设置自定义 ID,您可以执行以下操作:

    FirebaseNodeName.child("user").child(customId).set(key, value);
    

    【讨论】:

    • 怎么会自动生成??如果我想保存多于一条记录,那么将更新同一条记录,而不是插入新记录
    • 你必须在后端用一些逻辑生成它。例如:获取最后推送的 id 并将其递增 1 或保留本地计数器。基本上,它会根据您的用例而有所不同。
    • 此外,为了避免“重复的顺序键”,firebase 提供了自己的解决方案(即唯一键/ID)。
    • 那是什么?请帮我详细说明一下,我是firebase的新手。你在谈论 push() 吗?但它会生成像“-L-BOesPXukRflreyooJ”这样的密钥,如果我想更新或删除一些记录,我不知道如何检索这种密钥
    • 您看到的作为 Firebase 自动生成密钥的随机字符串称为 FIrebase push IDs。无论并发如何,它都能保证每个键的唯一性。因此,即使多个用户同时向数据库推送数据,也不会因为这个唯一键而覆盖任何数据。如果存在多个客户端(同时尝试更新表),在后端很难达到相同的效果。
    猜你喜欢
    • 1970-01-01
    • 2021-07-14
    • 2022-10-26
    • 2018-04-25
    • 2018-11-27
    • 1970-01-01
    • 2023-03-12
    • 2013-08-05
    • 1970-01-01
    相关资源
    最近更新 更多