use $ заполнить в агрегации мангуст [дубликаты]

На этот вопрос уже есть ответ:

MongoDB $ lookup Objectid получить пустой массив? 1 ответ Как мне выполнить эквивалент SQL Join в MongoDB? 19 ответов

Я не знаю, когда использоватьref в схеме, но недавно я начал использовать его, поскольку он выглядит чистым. Ниже приведен рабочий пример.

const UserSchema = new Schema({
  credit: {
    type: Schema.Types.ObjectId,
    ref: 'Credit'
  }
})

Я просто использую заполнить как

const response = await User.find({}).populate('Credit').exec()

Но в другом случае я должен использовать$lookup как и в других контроллерах предыдущий разработчик использовал агрегацию.

const response = await Job.aggregate([
    {
      $match: queryObj
    },
    {
      $lookup: lookupObj
    },
    {
      $lookup: {
        from: 'credit',
        localField: ??
        foreignField: ??
        as: 'credit'
      }
    }
  ])

как вы видите код выше, я должен проскользнуть в этот дополнительный $ lookup

{
      $lookup: {
        from: 'credits',
        localField: ??, //no idea what this should be.
        foreignField: '_id'
        as: 'credits'
      }
    }

Но это все еще не работает. Я получил кредитное свойство в виде пустого массива.

Ответы на вопрос(0)

Ваш ответ на вопрос