Mongoose возвращает Promise вместо нужного объекта

function get_or_create_player(user_id) {
    let player = Player.findOne({user_id: user_id})
        .exec()
        .then(user => {
            return user;
        });
    
    if (!player) {
        player = new Player({
            user_id: user_id
        });

        player.save();
    }

    return player;
}

Есть такая функция которая получает или создает игрока и возвращает. Но при попытке вернуть объект пользователя я получаю всегда:

Promise { <pending> }

Почему так происходит? И как мне вернуть самого пользователя?


Ответы (0 шт):