我正在使用Angular.js和Firebase创建一个应用程序,直到我的界面处于正常工作状态,我打算手动插入数据。虽然添加键:值对很容易,但我还是无法弄清楚如何构建多级数据,比如添加一个内部有多个条目的对象。如果我导入一个json文件,它会这样做,但我不想编辑一个json文件并在每次我想要进行更改时上传它。有没有办法做到这一点,我不知道?
答案 0 :(得分:45)
如果您前往Firebase Forge(https://[your-firebase].firebaseio.com
),您可以为Firebase加载图形调试器并手动添加,修改或删除数据,并在实时更改时观看数据。
要使用Forge添加分层数据,请使用+
按钮创建新的子属性,为其命名并将值保留为空,然后使用子项上的+
按钮开始添加更多子项或子项属性。当您准备好保存数据时,请使用Add
按钮,或点击[Enter]
。
答案 1 :(得分:18)
有效且快速地编辑数据层次结构的接口自然需要预测该层次结构。因此,您不会找到预先构建的工具来编辑分层数据而无需繁琐的数据输入。
通常,我会打开第二个浏览器窗口,使用管理员权限登录,然后使用浏览器的调试器(例如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。
答案 2 :(得分:10)
使用斜杠指定子目录将允许这样做。 (对象/对象:)