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

Мне нужно найти значения «от» между «booking.from» и «booking.to» в запросе.

Как применить это здесь:

module.exports.findAvailability=function(reservation,callback){
    const query={      
        lab:reservation.lab,
        date:reservation.date,
        from:* //between reservation.from to reservation.to
    };

    reservationModel.find(query,callback);    
}

1 Ответ

0 голосов
/ 29 июня 2018
let query = {
  from: {
    $gte: reservation.from,
    $lt: reservation.to
  }
}
reservationModel.find(query, callback)

Если вы получили поле 'от' в вашей модели бронирования , попробуйте это.

Обновление # 1

Если вы хотите выбрать резервирование от - до определенной даты, вам следует рассмотреть возможность изменения типа поля на Date вместо Number в с и на полей.

const reservationSchema=new Schema({ nic:{type:String}, lab:{type:String}, date:{type:Date}, from:{type:Date}, to:{type:Date}, approval:{type:Boolean} });

Таким образом, запрос станет:

let query = {
      from: {
        $gte: reservation.from
      },
      to: {
        $lt: reservation.to
      }
    }
reservationModel.find(query, callback)

Единственное, что я хотел бы предложить найти findAvailability резервирования, вы должны добавить from и to в качестве параметров в функцию, кроме того, я бы предложил использовать библиотеку moment.js для манипулирования датами.

Например:

let query = {
      lab: reservation.lab,
      from: {
        $gte: moment().subtract(1, 'days')
      },
      to: {
        $lt: moment().toDate()
      }
    }
reservationModel.find(query, callback)

Здесь я обнаружил бронирование на 1 день.

Все запросы были протестированы с предоставленной схемой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...