【问题标题】:Manually inserting data in Firebase在 Firebase 中手动插入数据
【发布时间】:2023-03-16 06:05:02
【问题描述】:

我正在使用 Angular.js 和 Firebase 创建一个应用程序,在界面正常工作之前,我计划手动插入数据。虽然添加键:值对很容易,但我无法弄清楚如何构建多层次的数据,比如添加一个内部有多个条目的对象。如果我导入一个 json 文件,它会这样做,但我不想每次我想进行更改时都必须编辑一个 json 文件并上传它。有没有我不知道的方法?

【问题讨论】:

    标签: firebase


    【解决方案1】:

    如果您前往 Firebase Forge(https://[your-firebase].firebaseio.com),您可以为您的 Firebase 加载图形调试器并手动添加、修改或删除数据,并实时观察数据的变化。

    要使用 Forge 添加分层数据,请使用 + 按钮创建新的子属性,为其命名并将值留空,然后使用子属性上的 + 按钮开始添加更多子属性或子属性。当您准备好保存数据时,请使用Add 按钮,或点击[Enter]

    【讨论】:

    • +1 - 这里的关键是在添加父节点后添加子节点。 Forge GUI 似乎不允许您创建空对象。
    • 好提示。我的孩子名字有问题(Firebase 的,我自己没有孩子),它们不能包含点。
    • 酷,主要问题是显然你不能创建空对象/列表,你需要创建一个假对象来规划你的结构
    • @Rob DiMarco 有没有办法手动生成我们添加孩子的密钥?
    • @Tefa 我没有听懂你的问题,你能详细说明一下吗? Firebase 允许您选择任何键,或者如果您愿意,也可以为您生成一个。
    【解决方案2】:

    一个能够高效、快速地编辑数据层次结构的界面自然需要预测该层次结构。因此,您不会找到一个预先构建的工具来编辑分层数据而无需繁琐的数据输入。

    通常,我会打开第二个浏览器窗口,以管理员权限登录,然后使用浏览器的调试器(例如 Firebug)手动输入对象。我发现这比 JSON 的导入/导出要快很多(而且编写 JSON 实在是太乏味了!)。

    一般来说,我更喜欢update 而不是set,因为这意味着我可以只输入更改,而不必写出整个层次结构:

    new Firebase(MY_URL).child(PATH).update({
       // replace the widgets
       widgets: {
          one: { color: 'red', shape: 'square' },
          two: { color: 'green', shape: 'triangle' }
       },
    
       // reset the count
       widgetCount: 0,
    
       // delete my status
       status: null
    });
    

    如果 Forge 工具和通过调试器输入都不适合您,那么您可能会发现编写一个快速而肮脏、丑陋且原始的管理页面是值得的,您可以在其中更改数据并保存数据。

    我有几个,每个大约一个小时就完成了,用于我们网站上的频繁管理例程。诀窍是只构建你需要的东西,而不是被它有多酷和棒极了。斯巴达 FTW。

    【讨论】:

      【解决方案3】:

      使用斜杠指定子目录将允许这样做。 (对象/对象:)

      【讨论】:

        【解决方案4】:

        单击“+”按钮可以添加任意数量的级别。就这么简单。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-10-23
          • 1970-01-01
          • 2020-09-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多