Ссылка на Firestore

#angular #firebase #google-cloud-firestore #reference

#angular #firebase #google-cloud-firestore #ссылка

Вопрос:

Я использую облачную базу данных Firestore и связал некоторые записи коллекции по ссылке.

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

Каков план здесь, это неправильный подход для ссылки?

 Article {
   name: string;
   price: number;
}

OrderEntry {
   name: string;
   article: Reference;
}
  

Если я сейчас удалю статью, ссылка все еще будет присутствовать в OrderEntry, но статья больше не существует.

Могу ли я при удалении элемента проверить, есть ли на него ссылка в другом объекте?

Ответ №1:

Единственный способ добиться этого — сделать запрос для документов с известным полем, которое может содержать ссылку на удаленный документ. Firestore не сделает этого за вас — ему все равно, будет ли удален документ с существующими ссылками.

Вы можете запрашивать ссылки так же, как и любой другой запрос в Firestore. Просто передайте объект DocumentReference в качестве значения поля, которое может содержать его значение.