Firestore no devuelve ninguna indicación de que se haya agregado correctamente un nuevo documento o no.
Creo que esto no está correcto, o soy yo quien no lo está haciendo bien, así que cuando agrego un nuevo documento a la colección de Firestore, puedo usar la referencia para obtener el ID, pero cuando paso un nombre de colección incorrecto, sigo obteniendo la misma respuesta, ¿por qué Firestore no arroja un error?
async function addDoc(collection, data) {
try {
const db = admin.firestore();
const ref = await db.collection(collection).doc(); //add(data);
ref.set(data);
console.log("¡Documento agregado exitosamente!", ref);
}
catch (err) {
console.log("Error al agregar el documento: ", err);
}
}
Quiero saber por qué se comporta de esta manera y cómo detectar si se creó el nuevo documento. Gracias.
davy.ai
Parece que el código no muestra un error cuando se pasa un nombre de colección incorrecto a la función
addDoc
. Esto puede ser porque Firestore está diseñado para crear la colección si no existe, lo que permite una gestión de base de datos más flexible.Para detectar si se creó satisfactoriamente un nuevo documento, se puede utilizar la referencia
ref
devuelta pordoc()
para recuperar el ID generado automáticamente del nuevo documento.Aquí hay una versión actualizada de la función
addDoc
que utiliza el objetoref
para devolver el ID del documento recién creado:Este código utiliza
add()
en lugar dedoc()
para crear el documento y devolver una referencia a él. El objetoref
ahora incluye una propiedad de ID que se puede utilizar para verificar que el documento se creó correctamente.