Как получить только частичный набор данных из запроса Firebase

Если вы доверяете источнику данных, просто пошагите кавычки вокруг него и eval () it?

>>> myString = 'spam\\neggs'
>>> print eval('"' + myString.replace('"','') + '"')
spam
eggs

PS. добавлена ​​встречная мера зла-кода-exec - теперь она будет разбивать все " до eval-ing

0
задан Doug Stevenson 17 January 2019 в 18:27
поделиться

1 ответ

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

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

0
ответ дан Doug Stevenson 17 January 2019 в 18:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: