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

335
Visualizações
¿Cómo puedo usar una consulta en varias ocasiones con firebase?

El registro de mi consola tiene 2 ID diferentes: sender.id y otherparticipants[0].id

Necesito consultar mi primer documento con sender.id U otros Participantes (porque puede ser uno u otro)

Estoy tratando de hacer eso con un operador OR pero Firebase parece no reconocer mi segundo valor.

¿Sabes cómo puedo tener el mismo resultado en el buen sentido?

 .then(() => { console.log('participant', otherParticipants[0].id, sender.id); firebase .firestore() .collectionGroup('favoris') .where('id', '==', sender.id || otherParticipants[0].id) .get() .then((querySnapshot) => { querySnapshot.forEach((doc) => { console.log('data2', doc.data()); firebase .firestore() .collectionGroup('favoris') .where('idUser', '==', sender.id || otherParticipants[0].id) .get() .then((querySnapshot) => { console.log(querySnapshot.size); querySnapshot.forEach((doc) => { console.log('dataFinal', doc.data()); socialFeedsRef .doc(sender.id) .collection('chat_feed') .doc(channel.id) .set( { favoris: true, }, { merge: true }, ); }); }); }); }); });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No es así como debe crear una consulta OR en Firestore:

 .where('id', '==', sender.id || otherParticipants[0].id)

En esta línea, el || El operador no ayuda.


Debe crear una matriz que contenga las ID de los usuarios que participan en el chat, por ejemplo, ID de participantIDs: ["yourSenderUID", "yourOtherUid"] .

Luego, en lugar de la llamada anterior, agregue la siguiente:

 .where("participantIDs", "array-contains-any", [sender.id, otherParticipants[0].id])

Cuando ejecute una consulta de este tipo, obtendrá un mensaje de advertencia que suena así:

FAILED_PRECONDITION: la consulta requiere un índice COLLECTION_GROUP_ASC para los favores de la colección y la identificación del campo. Puedes crearlo aquí: ...

Lo que significa que se requiere un índice. Simplemente puede hacer clic en esa URL o copiar y pegar la URL en un navegador web y su índice se creará automáticamente para usted.

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