Как настроить прослушиватель в реальном времени для заголовка документа в коллекции Firebase - Python - PullRequest
0 голосов
/ 20 июня 2019

Я пытаюсь прослушать коллекцию firebase для создания документа.

В документации Firebase это выглядит следующим образом:

# Create a callback on_snapshot function to capture changes
def on_snapshot(col_snapshot, changes, read_time):
    print(u'Callback received query snapshot.')
    print(u'Current cities in California:')
    for doc in col_snapshot:
        print(u'{}'.format(doc.id))

col_query = db.collection(u'cities').where(u'state', u'==', u'CA')

# Watch the collection query
query_watch = col_query.on_snapshot(on_snapshot)

Вместо u'state 'внутри where (), есть ли какой-нибудь способ ссылки на заголовок документа?(Заголовок отсутствует в документе)

Я пытался использовать u'__name__', но получаю ошибку:

RuntimeError: Error 3: a filter on __name__ must be a document resource name

1 Ответ

0 голосов
/ 20 июня 2019

Кажется, что в JavaScript SDK есть явные опции, как показано здесь :

db.collection('books').where(firebase.firestore.FieldPath.documentId(), '==', 'fK3ddutEpD2qQqRMXNW5').get()

То есть firebase.firestore.FieldPath.documentId() обозначает идентификатор документа.

В Python нет прямого эквивалента, но вы можете сделать то же самое, запросив __name__, который является внутренним именем этого поля:

col_query = db.collection(u'cities').where(u'__name__', u'==', u'your_document_id')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...