【发布时间】:2017-01-09 09:30:12
【问题描述】:
我想从 Firebase 数据库中导入排序后的数据。
例如:
我有一家小公司,我需要导入所有雇主的数据。
我是owner_01,这意味着我必须导入其子owner_uid 匹配owner_01 的所有用户。
数据将在网站上使用,这意味着我将使用javascript。
这里有 JSON:
{
"Owner_users" : {
"owner_01" : {
"email" : "owner_01@gmail.com",
"uid" : 123
},
"owner_02" : {
"email" : "owner_02@gmail.com",
"uid" : 12345
}
},
"Users" : {
"user_01" : {
"Email" : "asd@ghita.com",
"Name" : "asd",
"age" : 23,
"owner_uid" : 123,
"uid" : "asd"
},
"user_02" : {
"Email" : "all@gmail.com",
"Name" : "all",
"age" : 49,
"owner_uid" : 123,
"uid" : "asdfg"
},
"user_03" : {
"age" : 60,
"email" : "ovenre@gmail.com",
"owner_uid" : 12345,
"uid" : "sdfzsvsvsd"
}
}
}
检查this url 以了解数据库的结构。 更新:
HTML 代码:
<table class="mdl-data-table mdl-js-data-table ">
<thead>
<tr>
<th class="mdl-data-table__cell--non-numeric">Email</th>
<th>Age</th>
<th>uid</th>
</tr>
</thead>
<tbody id="usersData">
</tbody>
</table>
JS代码
var usersRef = firebase.database().ref('Users')
var query = usersRef.orderByChild('owner_uid').equalTo('123');
query.on("child_added", function(snapshot) {
var email = snap.child("Email").val;
var name = snap.child("Name").val;
var uid = snap.child("uid").val;
$("#usersData").append("<tr><td" + email + "</td><td>" + name + "</td><td>" + uid + "</td></tr>");
});
【问题讨论】:
-
您在问题中包含了指向 JSON 树图片的链接。请将其替换为作为文本的实际 JSON,您可以通过单击 your Firebase Database console 中的导出 JSON 链接轻松获得该文本。将 JSON 作为文本使其可搜索,让我们可以轻松地使用它来测试您的实际数据并在我们的答案中使用它,一般来说这只是一件好事。
-
@FrankvanPuffelen 感谢您的建议!我上传了 JSON 树。
标签: javascript web firebase firebase-realtime-database