Как проверить, содержит ли документ свойство в Cloud Firestore? - PullRequest
0 голосов
/ 25 октября 2018

Я хочу знать, есть ли способ проверить, присутствует ли свойство в документе Cloud Firestore.Что-то вроде document.contains("property_name") или, если существует свойство документа, существует.

Ответы [ 3 ]

0 голосов
/ 25 октября 2018

Невозможно с помощью клиентских SDK запросить только одно поле документа Firestore, либо для его значения, либо для его существования / присутствия.

Вам необходимозапросить весь документ и проверить это конкретное поле.

0 голосов
/ 19 августа 2019

Я думаю, что вы ссылаетесь на делая запрос .Тем не менее, нет никакого способа проверить, присутствует ли какое-либо поле в Firestore.Но вы можете добавить еще одно поле со значением true / false

val query = refUsersCollection
        .whereEqualTo("hasLocation", true)
query.get().addOnSuccessListener { 
      // use the result
  }

проверить эту ссылку для более

https://firebase.google.com/docs/firestore/query-data/queries Как мнеполучить документы, где определенное поле существует / не существует в Firebase Cloud Firestore?

0 голосов
/ 25 октября 2018

Чтобы решить эту проблему, вы можете просто проверить объект DocumentSnapshot на нуль, как это:

var yourRef = db.collection('yourCollection').doc('yourDocument');
var getDoc = yourRef.get()
    .then(doc => {
      if (!doc.exists) {
        console.log('No such document!');
      } else {
        if(doc.get('yourPropertyName') != null) {
          console.log('Document data:', doc.data());
        } else {
          console.log('yourPropertyName does not exist!');
        }
      }
    })
    .catch(err => {
      console.log('Error getting document', err);
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...