Объединяйте посты из разных тегов в Firestore - PullRequest
0 голосов
/ 27 мая 2018

У меня есть несколько сообщений в названии коллекции Firestore posts.Каждый пост имеет коллекцию tags.

posts : {

  Id1: {

     tags: {tag1: true, tag2: true}
    },
  Id2: {

     tags: {tag12: true, tag21: true}
    },
   Id3: {

     tags: {tag31: true, tag2: true}
    },
...
}

. С этой структурой я могу фильтровать, чтобы получить пост с определенными тегами.

db.collection('posts').where('tags.tag2', '==', 'true').limit(10)

Однако, если я хочу фильтровать postsдля нескольких тегов у меня есть только эта идея:

x= db.collection('posts').where('tags.tag2', '==', 'true').limit(5)
y= db.collection('posts').where('tags.tag1', '==', 'true').limit(5)
page1 = x + y

Но как, если у меня есть больше тегов (10 тегов или больше).Как их объединить с ограничением для каждой страницы 10 и перейти на следующую страницу с оптимизированным алгоритмом.

...