#mongoose
Вопрос:
Есть ли какой-либо способ получить общую длину массива для разбиения на страницы?
В настоящее время у меня есть эта модель викторины, которая имеет следующее поле
leaderboard: [{ userId: { type: mongoose.Schema.Types.ObjectId, ref: 'User' }, score: { type: Number }, }],
И я реализовал разбиение на страницы следующим образом:
Quiz.findById(id).slice('leaderboard', [skip,limit]).populate('leaderboard', 'name')
Текущее решение, которое у меня есть, — это сделать еще один вызов Quiz.findById, а затем получить длину массива лидеров с помощью JS
const quiz = await Quiz.findById(id) const total = quiz.leaderboard.length
Но это кажется чрезвычайно дорогим
Комментарии:
1. Я не в состоянии понять ваш вопрос. разве мы не можем напрямую использовать
Quiz.findById(id).select('leaderboard').slice('lead.......
?