Firestore - Как получить данные из поля массива в python - PullRequest
0 голосов
/ 26 марта 2020

У меня проблема с тем, как я получу данные / значение из поля, которое является массивом. Пожалуйста, смотрите изображение:

enter image description here

На изображении я хочу получить данные / значение parking_code из array field (parkings). Я попробовал это:

parking2 = db.collection(u'parking').document().get({u'parkings.parking_code'})

, но он возвращает меня так: <google.cloud.firestore_v1.document.DocumentSnapshot object at 0x0000014925256550>

Я также попробовал этот вид кода:

parking2 = db.collection(u'parking').document().get({u'parkings.parking_code'}).to_dict()

, но он возвращает None значение. Если у вас есть решение по этому вопросу или хотя бы просто идея, пожалуйста, мне нужна ваша помощь.

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020
doc_ref = db.collection(u'parking').document(u'D7k...')

doc = doc_ref.get()
print(doc.to_dict())

https://cloud.google.com/firestore/docs/query-data/get-data#custom_objects

0 голосов
/ 26 марта 2020

Согласно официальной документации:

DocumentSnapshot содержит данные, считанные из документа в вашей базе данных Cloud Firestore. Данные могут быть извлечены с помощью методов getData () или get (String).

Если DocumentSnapshot указывает на несуществующий документ, getData () и его соответствующие методы будут возвращать ноль. Вы всегда можете явным образом проверить наличие документа, вызвав существующий ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...