我正在尝试查询 firebase 中的一些分层数据。我在弄清楚如何查询以下数据结构时遇到了一些困难:
{
"orgs": {
"-KBFXBBEyvgtfqMvU4pi": {
"name": "ACME 123",
"owner": "-K9IPqIUIuEFzLS0f_Pe",
"users": {
"-KBF_GhwTmXfR6Jce30t": {
"email": "[email protected] /cdn-cgi/l/email-protection",
"permission": "editor",
"userKey": "K99LV9cTjh1ovW1D5j2"
},
"-KBF_M533zzbUilGvAAW": {
"email": "[email protected] /cdn-cgi/l/email-protection",
"permission": "editor"
}
}
},
"-KBFaKlJ8tfqjBQjAZgq": {
"name": "ACME Alt LLC",
"owner": "-K9IPqIUIuEFzLS0f_ZZ",
"users": {
"-KBFbD4trt9nyeHPUQbn": {
"email": "[email protected] /cdn-cgi/l/email-protection",
"permission": "editor"
}
}
}
}
}
具体来说,我想知道电子邮件地址是否“[电子邮件受保护] /cdn-cgi/l/email-protection“存在。但这对我来说有点困惑,因为我需要搜索 2 个级别(组织和用户)。
在阅读了更多文档后,我似乎真的不应该像这样嵌套我的数据。老实说,在使用分层的 JSON 模式时,这样做似乎有点相反。无论如何,这就是我现在想做的:
{
"orgs": {
"-KBFXBBEyvgtfqMvU4pi": {
"name": "ACME 123",
"owner": "-K9IPqIUIuEFzLS0f_Pe"
}
},
"-KBFaKlJ8tfqjBQjAZgq": {
"name": "ACME Alt LLC",
"owner": "-K9IPqIUIuEFzLS0f_ZZ"
}
}
},
"orgMembership": {
"-KBFXBBEyvgtfq7h381h": {
"org": "-KBFXBBEyvgtfqMvU4pi",
"email": "[email protected] /cdn-cgi/l/email-protection",
"permission": "editor"
}
}
然后我可以使用以下查询:
orgMRef.orderByChild("email").equalTo("[email protected] /cdn-cgi/l/email-protection").once("child_added", function(snapshot) {
console.log("found: " + snapshot.key());
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)