Estoy usando el SDK web v9.
Tengo una colección llamada 'transacciones entrantes' que mantiene un registro de cada transacción en una billetera cardano.
De vez en cuando, mi servidor enviará una transacción en respuesta a cada transacción en esta colección (como enviar un nft o reembolsar ADA) y quiero agregar estas transacciones a una subcolección en el documento de transacción relevante, por lo que la estructura se ve así :
Este es el código que tengo para obtener la ruta correcta a la referencia del documento recién creado y cargar algunos datos de prueba en el emulador de Firebase:
//1. Get current doc const currentDoc = doc(db, 'payments_in', transactionId); //2. Build refund database entry //2A. Get collection from database (will create one if doesn't exist) const newCollection = collection(currentDoc, 'related_transactions'); //2B. Get a new document from database within new collection const newSubDoc = doc(newCollection); //2C. Upload entry to database await setDoc(newSubDoc, { test: 'test' }); Cuando registro la ruta de newSubDoc, obtengo esto, por lo que la ruta se ve bien (¿creo?): payments_in/kXK5pimm29nRhU4CohA6/related_transactions/NL11eYmsB4M9vHw6PI8X
Sin embargo, cuando intento enviar la entrada mediante setDoc, aparece el siguiente mensaje de error:
@firebase/firestore: Firestore (9.1.1): Connection GRPC stream error. Code: 3 Message: 3 INVALID_ARGUMENT: Document name "projects//databases/(default)/documents/payments_in/kXK5pimm29nRhU4CohA6/related_transactions/tLoCiHUJaA2uYhxt7drb" lacks a project id at index 9.¿Alguien ve lo que estoy haciendo mal aquí?
Gracias
Si observa la ruta en el mensaje de error, falta un ID de proyecto después de projects/ : projects//databases/(default)/documents/payments_in/kXK5pimm29nRhU4CohA6/related_transactions/tLoCiHUJaA2uYhxt7drb . Es posible que desee volver a verificar cómo inicializa db y si su configuración de Firebase está completa.