Desde mi aplicación y consola javascript

firestore.collection('organizations/f1f4002a-1fb2-4805-baf1-a1a709f228e9/emailsSent').get().then(console.log)

Devuelve QuerySnapshot con vacía: verdadera

Sin embargo, claramente HAY un registro. Todas las demás consultas que escribo parecen funcionar. es decir, registros de asignación, correos electrónicos, etc.

`` `

firebase console

Siento que me estoy volviendo loco y probablemente sea algo realmente estúpido, así que me disculpo de antemano.

2
Enric Ribas 19 feb. 2018 a las 14:32

2 respuestas

La mejor respuesta

Observe que el nombre del documento 455...2c2 se muestra en cursiva en la consola, lo que definitivamente no es el caso normal para los documentos que se muestran en la consola. Esa cursiva en realidad significa que el documento se eliminó, sin embargo, probablemente contiene otras subcolecciones que no se eliminaron (intente hacer clic en él).

Dado que las consultas de Firestore son superficiales, el get () que está intentando realizar no generará ningún documento, porque en realidad no hay ningún documento en esa colección.

Es posible que algo en su sistema haya eliminado ese documento y no haya eliminado sus subcolecciones, por lo que probablemente valga la pena averiguar qué es responsable de esa eliminación y modificarlo para que también elimine sus subcolecciones (de lo contrario, permanecerán "huérfanos" en su base de datos así indefinidamente).

Por otra parte, no hay mucho que pueda hacer con respecto a su consulta como se muestra: está devolviendo los resultados correctos.

5
Doug Stevenson 19 feb. 2018 a las 17:08

Prueba esto...

const db = admin.firestore();

return db.collection('organizations/f1f4002a-1fb2-4805-baf1-a1a709f228e9/emailsSent').get().then(snapshot => {
  snapshot.forEach (doc => {
    console.log(`ID: ${doc.id}`);
    console.log(doc.data());
  });
});
0
Jason Berryman 19 feb. 2018 a las 13:20