MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mongoose - obtém o comprimento da matriz no modelo


find os resultados só podem incluir conteúdo dos próprios documentos, enquanto aggregate pode projetar novos valores derivados do conteúdo do documento (como o comprimento de um array). É por isso que você precisa usar aggregate para isso, mesmo que você esteja recebendo apenas um único documento.
Post.aggregate([{$match: {postId: 5}}, {$project: {upvotes: {$size: '$upvotes'}}}])

Uma única exceção é o $meta operador de projeção para projetar um $text pontuação do resultado da consulta.