use $ populate en agregación mangosta [duplicado]
Esta pregunta ya tiene una respuesta aquí:
MongoDB $ lookup Objectid obtiene una matriz vacía? 1 respuesta ¿Cómo realizo el equivalente de SQL Join en MongoDB? 19 respuestas No sé cuándo usarref
en el esquema, pero recientemente comencé a usarlo ya que se ve limpio. A continuación se muestra un ejemplo de trabajo.
const UserSchema = new Schema({
credit: {
type: Schema.Types.ObjectId,
ref: 'Credit'
}
})
Solo usaré populate como así
const response = await User.find({}).populate('Credit').exec()
Pero en mi otro caso, tengo que usar$lookup
como en otros controladoresel desarrollador anterior ha utilizado la agregación.
const response = await Job.aggregate([
{
$match: queryObj
},
{
$lookup: lookupObj
},
{
$lookup: {
from: 'credit',
localField: ??
foreignField: ??
as: 'credit'
}
}
])
Como puede ver el código de arriba, tengo que ingresar esta $ búsqueda adicional
{
$lookup: {
from: 'credits',
localField: ??, //no idea what this should be.
foreignField: '_id'
as: 'credits'
}
}
Pero todavía no funciona. Obtuve una propiedad de crédito como una matriz vacía.