запрос мангуста, чтобы найти все по имени, а затем выбрать последний созданный

1

То, что я пытаюсь выполнить, - это сначала отсортировать все документы, не содержащие правильную строку, а затем выбрать документ, который в последний раз был создан этими.

Теперь мой запрос выглядит так:

 projectModel.findOne().sort({owner: req.body.owner, date: -1}).exec(function(err, doc) {

но это явно дает мне ошибки. Как это сделать правильно?

Я очень благодарен за каждый ответ!

  • 1
    Не думаете ли вы ... что вы делаете неправильно, передавая owner : req.body.owner в запросе сортировки.
Теги:
database
mongoose

2 ответа

4
Лучший ответ

Просто попробуйте это. Вы пытаетесь найти владельца в сортировке, который не будет работать, потому что функция сортировки принимает только один аргумент, если вы используете дату как параметр сортировки. Таким образом, вы можете сделать одно, просто поместите параметр owner в функцию findone, а затем все будет работать нормально, как требуется.

projectModel.findOne({owner: req.body.owner}).sort({date: -1}).exec(function(err, doc) {//your codes here }

  • 1
    Кажется, это работает, спасибо, мой дорогой онлайн-друг
  • 0
    Можете ли вы отметить это как ожидаемый ответ @Charlie
0

попробуйте добавить этот pamater _id : -1 и ограничение: 1 в вашей цепочке сортировки

projectModel.findOne().sort({owner: req.body.owner, _id: -1}).limit(1)

  • 0
    Как это работает?
  • 0
    ой прости мой плохой
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню