find
wyniki mogą zawierać tylko treść z samych dokumentów, podczas gdy aggregate
może rzutować nowe wartości, które pochodzą z treści dokumentu (np. długość tablicy). Dlatego musisz użyć aggregate
w tym celu, nawet jeśli otrzymujesz tylko jeden dokument.
Post.aggregate([{$match: {postId: 5}}, {$project: {upvotes: {$size: '$upvotes'}}}])
Pojedynczym wyjątkiem jest $meta
operator projekcji do rzutowania $text
wynik zapytania.