javascript - Mongoose: ObjectId Array not populating -


import * mongoose 'mongoose'; mongoose.connect('mongodb://localhost:27017/testthis'); const db = mongoose.connection;  db.on('error', console.error.bind(console, 'connection error:')); db.once('open', async () => {     const userroles = new mongoose.schema({         rolename: string,         user: {type: mongoose.schema.types.objectid, ref: 'user'}     });     const userrolemodel = mongoose.model('userrole', userroles, 'userrole');      const userschema = new mongoose.schema({         name: string,         roles: [{type: mongoose.schema.types.objectid, ref: 'userrole'}]     });     const usermodel = mongoose.model('user', userschema, 'user');      await usermodel.remove({});     await userrolemodel.remove({});      const user = new usermodel({         name: 'user1'     });      const saveduser = await user.save();      const role = new userrolemodel({         rolename: 'test',         user: saveduser._id     });      await role.save();      const users = await usermodel.find().populate('roles').exec();     // not populate roles     console.log('users', users);      const roles = await userrolemodel.find().populate('user').exec();     // populates user     console.log('roles', roles);      process.exit(); }); 

i'm able populate user when retrieve roles. i'm not able retrieve roles belong user.

the code should able run long have mongo running , transpile es5.

is able see i'm doing wrong?

(im working along cody) issue not storing id's of roles in user model. had mistakenly assumed populate method use user models _id fetch userrole. isn't case. adding userrole ids roles array, populating worked.


Comments

Popular posts from this blog

What is happening when Matlab is starting a "parallel pool"? -

angular - DownloadURL return null in below code -

php - Cannot override Laravel Spark authentication with own implementation -