SQLAlchemy: цель указания уже существующего индекса?

Это немного поздно в игре, так как некоторые другие уже хорошо ответили, но я расскажу, как я могу реализовать его.

Это зависит от того, что Firebase REST API предлагает параметр shallow=true.

Предположим, что у вас есть объект post, и каждый из них может иметь номер comments:

{
 "posts": {
  "$postKey": {
   "comments": {
     ...  
   }
  }
 }
}

Вы, очевидно, не хотите получать все комментарии, просто количество комментариев.

Предполагая, что у вас есть ключ для сообщения, вы можете отправить запрос GET на https://yourapp.firebaseio.com/posts/[the post key]/comments?shallow=true.

Это вернет объект key- пары значений, где каждый ключ является ключом комментария, а его значение - true:

{
 "comment1key": true,
 "comment2key": true,
 ...,
 "comment9999key": true
}

Размер этого ответа намного меньше, чем запрос эквивалентных данных, и теперь вы можете рассчитать количество ключей в ответе, чтобы найти ваше значение (например, commentCount = Object.keys(result).length).

Это может не полностью решить вашу проблему, поскольку вы все еще вычисляете количество возвращенных ключей, и вы не можете обязательно подпишитесь на значение по мере его изменения, но оно значительно уменьшит размер возвращаемых данных, не требуя каких-либо изменений в вашей схеме.

0
задан naicolas 29 March 2019 в 13:09
поделиться