Удалить элемент Specifi c в пожарном депо? - PullRequest
1 голос
/ 21 апреля 2020

Я пытаюсь удалить документ в базе данных. Я извлекаю документ с помощью следующей команды:

doc_ref = db
    .collection(u'items')
    .where(u'Name', u'==', str(Name))
    .where(u'ID', u'==', str(ID))
    .stream()

Я понимаю, что это запрос, и у него нет идентификатора, если только он не является документом, но не уверен, как это решить. Согласно документации Google, вам нужно:

db.collection(u'cities').document(u'DC').delete() 

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

1 Ответ

1 голос
/ 21 апреля 2020

Как пояснил инженер из Google в этом ответе , сначала вам нужно будет выполнить запрос для получения значений, затем l oop поверх «снимка» из сгенерированной базы данных и наконец, удалите каждый документ из «снимка».

Итак, сначала вам нужно будет выполнить свой запрос, чтобы получить значения, используя тот запрос, который вы уже используете, а затем запустить следующий код:

for doc in doc_ref:
    print(u'Deleting doc {} => {}'.format(doc.id, doc.to_dict()))
    doc.reference.delete()

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

Дайте мне знать, помогла ли вам эта информация!

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