Publish your own packages to the world's most popular software ecosystem with npm Pro.Get started »

nested-pop

0.1.4 • Public • Published

nested-pop

Promise based nested populate for Waterline and SailsJS

Installation

$ npm install --save nested-pop

Usage

var nestedPop = require('nested-pop');
 
User.find()
.populate('dog')
.then(function(users) {
 
    return nestedPop(users, {
        dog: [
            'breed'
        ]
    }).then(function(users) {
        return users
    }).catch(function(err) {
        throw err;
    });
    
}).catch(function(err) {
    throw err;
);

If the property is named differently than the model, you may need to use it the following way.

var nestedPop = require('nested-pop');
 
User.find()
.populate('canine')
.then(function(users) {
 
    return nestedPop(users, {
        canine: {
            as: 'dog',
            populate: [
                'breed'
            ]
        } 
    }).then(function(users) {
        return users
    }).catch(function(err) {
        throw err;
    });
    
}).catch(function(err) {
    throw err;
);

If the property is plural, but the model is in the singular form, it usually automatically detects it. This only works when the property's plural form only adds a single 's' to the end of the model name.

var nestedPop = require('nested-pop');
 
User.find()
.populate('dogs')
.then(function(users) {
 
    return nestedPop(users, {
        dogs: [
            'breed'
        ]
    }).then(function(users) {
        return users
    }).catch(function(err) {
        throw err;
    });
    
}).catch(function(err) {
    throw err;
);

License

MIT © Jam Risser

Install

npm i nested-pop

DownloadsWeekly Downloads

96

Version

0.1.4

License

MIT

Last publish

Collaborators

  • avatar