esto es lo que sucede cuando consuelo.log()
const followingUsers = await User.find({ _id: { $in: foundUser.followings } }) const getFeedData = async() => { for (let user of followingUsers) { for (let postId of user.posts) { console.log(postId) } } }Estoy ejecutando este código cuando consola. log (postId) devuelve todas las publicaciones con esa identificación, pero cuando intento recuperar todos los documentos con esa identificación, devuelve solo un documento
findById solo devolverá un registro o null , una ID es el campo _id en cada documento de una colección, que es un valor único
find es el equivalente de un comando where en SQL, devuelve tantos documentos que coincidan con la consulta, o una matriz vacía
pasar $in como una consulta para find busca una matriz de documentos coincidentes para la identificación del usuario
por lo tanto, si ya conoce los _id del documento, find devolverá los ID siempre que haya pasado una matriz de ObjectId válidos
// (pretending these are real id's) const arrayOfUserIds = [ ObjectId("5af619de653438ba9c91b291"), ObjectId("5af619de653438ba9c91b293"), ObjectId("5af619de653438ba9c91b297") ] const users = await User.find({ _id: { $in: arrayOfUserIds } }) console.log(users.length) users.forEach((user, index) => { console.log(`${index} - `, user._id) }) // => 3 // => 0 - ObjectId("5af619de653438ba9c91b291") // => 1 - ObjectId("5af619de653438ba9c91b293") // => 2 - ObjectId("5af619de653438ba9c91b297")