Пн goose предоставляет нам возможность применять агрегационные зацепки, которые работают только тогда, когда агрегирование применяется к этой конкретной модели.
userSchema.post("aggregate", function() {
this.pipeline().push({$project: { _id: 1, firstName: 1, lastName: 1 }});});
Приведенный выше код работает нормально, и когда мы делаем, применяется правильный прогноз
User.aggregate([...])
Но та же проекция не применяется, когда мы ищем пользователя в агрегате другой модели.
{
$lookup: {
from: "users",
localField: "user",
foreignField: "_id",
as: "associatedUser"
}
},
Есть ли способ в пн goose, чтобы мы могли применить проекцию в уровень модели, который применяется везде, где к этой модели обращаются, и нам не нужно применять проекцию в каждом агрегационном запросе.