пн goose Использовать конкретное значение текущего документа в поиске - PullRequest
0 голосов
/ 24 марта 2020

Я делаю свои первые шаги в mongoDb и moongose. Я хотел бы знать, как я могу использовать конкретное значение документа в поиске запроса. В моей базе данных есть список пользовательских документов, таких как:

{
name:"test",
surname:"test",
restaurant:{
    location:{
        type: "Point",
                    coordinates: [30.000,l0.000]
    },
    state:"OPEN",
    selected:true,
    last_change:"2020-03-24 10:12:30"
    time:5
}}

Это мой запрос

User.find({
                "restaurant.location":{
                    $nearSphere :{
                        $geometry: {
                            type: "Point",
                            coordinates: [latitude,longitude]
                        },
                        $maxDistance: distance
                    }
                },
                "restaurant.state":"OPEN",
                "restaurant.selected":true,
                "restaurant.last_change":{
                    $gte: moment(new Date()).subtract(20, "minutes").toDate(),
                    $lte: moment(new Date())
                }
            });

Поскольку вы видите в этой части, у меня число минут установлено на 20:

$gte: moment(new Date()).subtract(20, "minutes").toDate()

но я бы хотел использовать текущее свойство моего ресторана -> restauran.time и подумать вот так

$gte: moment(new Date()).subtract(restauran.time, "minutes").toDate(),

Не знаю, правильно ли это но моя цель состоит в том, чтобы все рестораны, где между last_change (current_time) (current_time - restaurant.time)

Как это сделать?

Извините за мой английский sh на продвинутом

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