【发布时间】:2015-11-06 18:48:44
【问题描述】:
在我的 firebase 应用程序中,我使用生成唯一 ID 的 push() 方法将对象存储在数组结构中。这些对象有一个名为“scheduledDate”的子属性我如何在firebase中创建一个indexOn规则来索引这个字段。在事件下,每个用户都有一个节点,而不是他们事件的子数组。 /events/userId/arrayOfEvents
我可以使用 orderByChild() 成功地按事件预定日期检索记录,但它警告我有关索引。
我的规则如下所示:
"events":{
".read" : "auth != null",
".write" : "auth != null",
".indexOn": ["scheduledDate"]
}
我的查询代码如下所示:
this.dbEvents = new Firebase(firebaseEventsUrl);
var q;
q = this.dbEvents.child(userId).orderByChild("scheduledDate").limitToLast(limitToLast);
return $firebaseArray(q);
我的数据如下所示:
events:{
user1:{
-K2NYCT2_uMwsTSfH58O(push generated):{
description: 'event 1',
scheduledDate: 1446730200000
},
--K2NyNh660I4k8loar-z:{
description: 'event 2',
scheduledDate: 1446730200000
},
},
user2:{
}
}
【问题讨论】:
-
数据或代码描述与实际数据/代码不同。请显示您的数据示例(请不要截图)和您用来查询它的代码。
-
已编辑以显示我正在使用的代码和数据结构。再次,它有效,只是警告我需要为 scheduleDate 编制索引,但我不知道如何为这么深的级别创建 indexOn 规则。
标签: firebase