Model.find не возвращает никаких результатов, если включен One-to-Many - PullRequest
0 голосов
/ 01 февраля 2019

Работает над некоторыми довольно базовыми функциями, но зашел в тупик.У меня есть 2 сценария:

(рабочий)

const SubscriptionSchema = new Schema({
    user: { type: String, required: true},
    date: {
        type: Date,
        default: Date.now
    },
    following: { type: Schema.Types.ObjectId, ref: 'user', required: true }
});

Я хочу найти свои подписки:

Subscription
   .find({'user': '5c086185443020001668aff7'})
   .exec((err, items) => {

        console.log(err)
        console.log("Users",items)

   });

Все работает, я получаю результаты.

Теперь вот с чем у меня проблемы:

Мне нужно заполнить "пользователя" некоторыми метаданными

const SubscriptionSchema = new Schema({
    user: { type: Schema.Types.ObjectId, ref: 'user' },
    date: {
        type: Date,
        default: Date.now
    },
    following: { type: Schema.Types.ObjectId, ref: 'user', required: true }
});

Я пытаюсь позвонить

Subscription
       .find({'user': '5c086185443020001668aff7'})
       .exec((err, items) => {

            console.log(err)
            console.log("Users",items)

       });

но в этом случае я получаю взамен [].Я пробовал несколько других подходов, но ни один из них не работал ('user._id', 'user.id)

Вот как это выглядит в mongodb:

enter image description here

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