Можно ли фильтровать по нескольким значениям карты в Firestore - PullRequest
0 голосов
/ 23 октября 2019

Некоторое время назад Firebase представила новую базу данных под названием Firestore . Я пытаюсь перенести базу данных Realtime моего проекта в новую. Один из недостатков базы данных Realtime заключается в том, что она не позволяет выполнять запросы по нескольким полям. Насколько я понимаю, то же самое относится и к Firestore (более или менее). Но я пытаюсь понять, возможно ли фильтровать несколько значений внутри свойства типа Карта .

Например,

field1: "Some string"
field2: "456"
field3: {
  "key1":"value1",
  "key2":"value2"
}

Здесь можно выполнить составные запросы, как объяснено здесь .

Итак, я мог бы выполнить:

let query = ref.where('field1', '==', 'Some string').where('field2', '==', '456');

Но как я могу добиться того же в отношениик свойствам внутри field3 ?

1 Ответ

0 голосов
/ 23 октября 2019

Для сравнения подполей используйте точечные обозначения.

Итак:

let query = ref.where('field3.key1', '==', 'value1').where('field3.key2', '==', 'value2');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...