Я пытаюсь создать календарь бронирования для пользователей в firestore, но не хочу создавать индекс для каждого пользователя: поле "_timeStamp" и "_service".
Путь / _sharedData / _calendars / userID / eventID
var cal = db.collection("sharedData").doc("calendars").collection(userID);
var query = cal.where("_service", "==", _myService)
.where("_timeStamp", ">", _dStart)
.where("_timeStamp", "<", _dEnd)
.limit(200)
.get()
Единственный обходной путь, который я вижу, это практично, если я помещаю все пользовательские события в одну коллекцию, удаляя ID пользователя, а затем запрашиваю его, но я могу достичь предела сбора в 1 МБ.
Путь / _calendars / eventID
var cal = db.collection("calendars");
var query = cal.where("_userID", "==", _myUser)
.where("_service", "==", _myService)
.where("_timeStamp", ">", _dStart)
.where("_timeStamp", "<", _dEnd)
.limit(200)
.get()