Search
 
SCRIPT & CODE EXAMPLE
 

JAVASCRIPT

populate example in mongoose

const Live = new Schema(
  {
    user_id:{ 		// this one populate
            type: Schema.Types.ObjectId,      
            ref: 'User',    //  User Schema
            required: true                 
        },
        title: {
            type: String,
        },
        category:{        // this one populate
            type: Schema.Types.ObjectId,
            ref: 'Category'  // Category Schema
        },
  }
)
let vid = await Live.find({})
            .populate({path:'user_id',select:'name image -_id'})
            .populate({path:'category',select:'category -_id',model:Category})

Comment

what does populate in mongoose mean?

"Mongoose populate() lets you reference documents in other collections.
Population is the process of automatically replacing the specified 
paths in the document with document(s) from other collection(s)."

Source: https://mongoosejs.com/docs/populate.html
Comment

mongoose (populate)

// The 2nd `populate()` call below overwrites the first because they
// both populate 'fans'.
Story.
  find().
  populate({ path: 'fans', select: 'name' }).
  populate({ path: 'fans', select: 'email' });
// The above is equivalent to:
Story.find().populate({ path: 'fans', select: 'email' });
Comment

Mongoose populate example

const members = await subtable.find({ party: req.body.party }).populate({
    path: "user_id", //subtable field which refers to your main table
    select: "fname lname",
  });
Comment

mongoose + populate

app.get('/movies', passport.authenticate('jwt', { session: false }), (req, res) => {
	Movies.find()
		.populate('Genre')
		.populate('Actor')
		.populate('Director')
		.then((movies) => {
			res.status(201).json(movies);
		})
		.catch((err) => {
			console.error(err);
			res.status(500).send(`Error: ${err}`);
		});
});
Comment

mongoose populate()

// populates a single object
User.findById(id, function (err, user) {
  const opts = [
    { path: 'company', match: { x: 1 }, select: 'name' },
    { path: 'notes', options: { limit: 10 }, model: 'override' }
  ];

  User.populate(user, opts, function (err, user) {
    console.log(user);
  });
});

// populates an array of objects
User.find(match, function (err, users) {
  const opts = [{ path: 'company', match: { x: 1 }, select: 'name' }];

  const promise = User.populate(users, opts);
  promise.then(console.log).end();
})

// imagine a Weapon model exists with two saved documents:
//   { _id: 389, name: 'whip' }
//   { _id: 8921, name: 'boomerang' }
// and this schema:
// new Schema({
//   name: String,
//   weapon: { type: ObjectId, ref: 'Weapon' }
// });

const user = { name: 'Indiana Jones', weapon: 389 };
Weapon.populate(user, { path: 'weapon', model: 'Weapon' }, function (err, user) {
  console.log(user.weapon.name); // whip
})

// populate many plain objects
const users = [{ name: 'Indiana Jones', weapon: 389 }]
users.push({ name: 'Batman', weapon: 8921 })
Weapon.populate(users, { path: 'weapon' }, function (err, users) {
  users.forEach(function (user) {
    console.log('%s uses a %s', users.name, user.weapon.name)
    // Indiana Jones uses a whip
    // Batman uses a boomerang
  });
});
// Note that we didn't need to specify the Weapon model because
// it is in the schema's ref
Comment

populate in mongoose

const mongoose = require('mongoose');
const { Schema } = mongoose;

const personSchema = Schema({
  _id: Schema.Types.ObjectId,
  name: String,
  age: Number,
  stories: [{ type: Schema.Types.ObjectId, ref: 'Story' }]
});

const storySchema = Schema({
  author: { type: Schema.Types.ObjectId, ref: 'Person' },
  title: String,
  fans: [{ type: Schema.Types.ObjectId, ref: 'Person' }]
});

const Story = mongoose.model('Story', storySchema);
const Person = mongoose.model('Person', personSchema);
Comment

how to use mongoose populate

{  _id: 59ab1c92ea84486fb4ba9f28,  username: JD,  posts: [    "59ab1b43ea84486fb4ba9ef0",    "59ab1b43ea84486fb4ba9ef1"  ]}
Comment

PREVIOUS NEXT
Code Example
Javascript :: react script syntax for deployment 
Javascript :: namespace javascript 
Javascript :: add new element to existing json object 
Javascript :: js int 
Javascript :: check items in array javascript 
Javascript :: javascript test throw error 
Javascript :: What is constructor.constructor()() in JavaScript 
Javascript :: nginx location regex * 
Javascript :: append css file with javascript 
Javascript :: javascript string slice 
Javascript :: update column with find sequelize 
Javascript :: pass component as props react 
Javascript :: router 
Javascript :: web application development software 
Javascript :: Material-ui Account Balance icon 
Javascript :: how to call function with only selected arguments in javascript 
Javascript :: ubicar escrol en el final 
Javascript :: javascript sort strings alphabetically 
Javascript :: rotas react com axios 
Javascript :: unslick if more then 
Javascript :: action cable nuxtjs 
Javascript :: angular append to FormControl errors 
Javascript :: javascript get the first day of the month and last day 
Javascript :: Creating an unnamed function 
Javascript :: play store version of react native app 
Javascript :: Function to convert an Array to an Associative array 
Javascript :: react interactions 
Javascript :: local = 1 
Javascript :: js stringConstructor type 
Javascript :: onstatechange firebase cant get stsTokenManager 
ADD CONTENT
Topic
Content
Source link
Name
3+4 =