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

466
Visualizações
Sequelize js agregue el recuento total de modelos asociados

Estoy tratando de modificar una consulta para que también devuelva un recuento de elementos. Quiero contar el número de "Comentarios de publicación" que se relacionan con una "Publicación". En este momento la consulta se ve así:

 let query = { attributes: { exclude: attributesToExclude, }, where: { 'club_id': this.id, }, order: [['date', 'DESC']], include: [ { model: models.PublicationComment, association: models.Publication.hasMany(models.PublicationComment, { as: 'lastComments' }), order: [['date', 'DESC']], limit: 3, include: [ { model: models.User, as: 'user', attributes: { exclude: attributesToExclude, }, } ], }, { model: models.PublicationLike, association: models.Publication.hasMany(models.PublicationLike, { as: 'likes' }), attributes: ['userId'] } ] };

El resultado que estoy tratando de obtener se vería así:

 [ { id: '2', clubId: '26', teamId: null, userId: '67', date: '2017-04-18T11:23:05.628Z', card: { type: 'status', text: 'publication example text', video: [Object] }, created_at: '2017-04-18T11:23:05.629Z', updated_at: '2017-04-18T11:23:05.629Z', deleted_at: null, likes: [], commentsCount: 4, lastComments: [ [Object], [Object], [Object] ] }]

Tenga en cuenta que hay una propiedad CommentCount con el resultado de la consulta de recuento deseado

Intenté agregar en los atributos de inclusión la función de contar por comentarios y repetir la asociación con el modelo PublicationComment sin parámetro de límite (necesito el total). Algo como esto:

 attributes: { include: [[sequelize.fn('count', sequelize.col(allComments.id), 'commentsCount']] exclude: attributesToExclude, },

Y agregue la nueva asociación dentro de la matriz icludde:

 { model: models.PublicationComment, association: models.Publication.hasMany(models.PublicationComment, { as: 'allComments' }) }

pero después de dos días de esfuerzos desperdiciados en esto, no puedo hacerlo funcionar.

¿Alguien tiene algún consejo, recurso o aclaración que pueda usar para avanzar en esto? Gracias.

over 4 years ago · Santiago Trujillo
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