Как получить общее количество документов в пн goose? - PullRequest
1 голос
/ 26 марта 2020
usermodel.find({ 'word': { $regex: `.*${word2}.*` } })
        .populate('user').limit(3)
        .skip(page).exec((err, searches) => {

})

Как получить количество документов (всего) при использовании лимита и пропустить? Это дает мне общее количество, когда я использую mon goose -paginate, но как я могу получить общее количество здесь?

1 Ответ

1 голос
/ 26 марта 2020

Вы можете выполнить два отдельных запроса, используя $ facet :

usermodel.aggregate([
    { $match: { your query goes here } },
    {
        $facet: {
            filtered: [ { $limit: 3 } ],
            total: [ { $count: "total" } ]
        }
    },
    {
        $unwind: "$total"
    }
])
...