Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

274
Visualizações
Firestore: almacenar una identificación de propiedad es un tipo de referencia por transacción por lotes de firestore

Intenté almacenar el tipo de referencia de contenido de datos por transacción por lotes, luego obtuve una excepción:

Llamada a la función WriteBatch.set() con datos no válidos. Valor de campo no admitido: un objeto personalizado (que se encuentra en pedidos de documentos/OC9dZErupEhPsamp8QEd)

¿Hay alguna manera de que podamos usar la transacción por lotes para almacenar el tipo de referencia?

este es mi código:

 batch.update(orderRef, { userId: firestore.doc(userId), });
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Normalmente se usa update() para actualizar los datos existentes del almacén de incendios. Revise los documentos de firestore para lo mismo. En ese ejemplo dado, están actualizando la población por incrementos de valor o con un nuevo número de población, pero antes de pasarlo en cada función de actualización, los valores se almacenan en un valor de costo si no es un valor estático. como lo preguntó @dharmaraj, edite sus preguntas publicando con el código completo, también puede leer la documentación dada de firestore para sus propios estudios.

 import firebase from "firebase/app"; const app = firebase.initializeApp({}); const firestore = app.firestore(); const batch = firestore.batch(); const newUserId = firestore.doc(userId); batch.update(orderRef, { userId: newUserId, });

Registre el valor de newUserId y vea qué está obteniendo.

about 4 years ago · Juan Pablo Isaza Relatório

0

No puede almacenar el objeto de referencia que devuelve doc() , es un objeto que puede tener referencias circulares y funciones en él. doc() no es la identificación del documento. Si desea obtener la identificación (que es una cadena), entonces:

 const newUserId = firestore.doc(userId).ref.id; batch.update(orderRef, { userId: newUserId, });
about 4 years ago · Juan Pablo Isaza Relatório

0

No sé por qué la entrada de validación por lotes debería ser un objeto puro. Traté de empujar la identificación del tipo de referencia dentro del objeto anidado y luego funcionó bien, sí, sé que ya es un truco, pero funciona.

cambio:

 batch.update(docRef, { user: firestore.collection('users').doc(userId) })

a:

 batch.update(docRef, { user: { id: firestore.collection('users').doc(userId) } })
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda