Как мне выполнить запрос? - PullRequest
0 голосов
/ 29 апреля 2019

Я хочу отобразить первые 10 пользователей из базы данных, которые имеют самый высокий «рейтинг». Я не нашел в документации mongoose много запросов.

Я получил схему пользователя

  const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const userSchema =  new Schema({
firstname: {
    type: String,
    required: true
},
lastname: {
    type: String,
    required:true
},
age: {
    type: Number,
    required:true
},
occupation: {
    type: String,
    required:true
},
city: {
    type: String,
    required: true
},
county: {
    type: String,
    required:true
},
country: {
    type:String,
    required: true,
},
email: {
    type: String,
    required:true
},
password: {
    type: String,
    required:true
},
imageUrl: {
    type: String,
    required:true
},
rate:{
    type:Number,
    required:true
}
});

module.exports = mongoose.model('User', userSchema);

Но в моем контроллере, по своей функции, я не знаю, как запросить первые 10 пользователей с самой высокой скоростью, вы можете мне помочь? На данный момент я просто User.find (), потому что я не нашел слишком много об этом в документации mongoose, или, возможно, я не знал, что искать.

Я ценю вашу помощь!

1 Ответ

0 голосов
/ 29 апреля 2019

попробуйте

User.find({}, {}, {sort: { 'rate' : -1 }}).limit(10)
.then(result => {
    // do what you want.
})
.catch(err => {
    // handle error
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...