我正在使用Firebase创建一个日历应用程序,例如Google日历。一组用户具有多个日历,并且一个日历具有许多事件。每个事件都有一个表示为开始日期和结束日期的时间段。有些活动为期一天,有些则超过一个月。
这是我的数据结构。
calendars collection
L groupId: String
L name, etc.
L events: Collection
L title: String
L color, etc.
L from: Timestamp
L to: Timestamp
我想查询周期包含给定月份的事件。但是Firestore不支持在不同字段上使用范围过滤器进行查询。
例如,我想这样查询。
Firestore
.collection('calendars')
.doc('abcde')
.collection('events')
.where('begin', '<', '2019-04-01')
.where('end', '>=', '2019-03-01')