Виртуальное население Мангуста, что такое мангуст#trustedSymbol?

#node.js #mongoose

Вопрос:

Это мои схемы:

user.js

 'use strict'  const { models, model, Schema } = require('mongoose')  const schema = new Schema(  {  name: {  type: String,  required: true,  },  },  {  timestamps: true,  discriminatorKey: 'type',  } )  schema.virtual('posts', {  ref: 'Post',  localField: '_id',  foreignField: 'user', })  module.exports = models.User|| model('User', schema)  

post.js

 'use strict'  const { models, model, Schema } = require('mongoose')   const schema = new Schema(  {  text: {  type: String,  required: true,  },  user: {  type: Schema.Types.ObjectId,  ref: 'User',  required: true,  },  },  {  timestamps: true,  discriminatorKey: 'type',  } )  module.exports = models.Post|| model('Post', schema)  

И запрос:

 const user = await UserModel.findById(req.params.id).populate('posts')  

Я не знаю, что я делаю не так, но заполнение ничего не возвращает

Я включаю свой флаг отладки мангуста, чтобы проверить, что такое запрос для виртуального заполнения, и вижу это на своем терминале:

 Mongoose: users.findOne({ _id: new ObjectId("6182fce8c339b6f51c933eee") }, { projection: {} }) Mongoose: posts.find({ user: { '$in': [ new ObjectId("6182fce8c339b6f51c933eee") ], [Symbol(mongoose#trustedSymbol)]: true }}, { skip: 0, limit: 10, perDocumentLimit: undefined, projection: {} })  

Я снова выполняю запрос вручную

 const posts = await PostModel.find({credential: { $in: [Types.ObjectId(req.params.id)]}})  

и возвращать данные :/

и печать терминала:

 Mongoose: posts.find({ user: { '$in': [ new ObjectId("6182fce8c339b6f51c933eee") ] } }, { projection: {} })