thoughts/node_modules/mongoose/lib/queryhelpers.js
node_modules/mongoose/lib/queryhelpers.jsRaw
1
2/*!
3 * Module dependencies
4 */
5
6var utils = require('./utils')
7
8/*!
9 * Prepare a set of path options for query population.
10 *
11 * @param {Query} query
12 * @param {Object} options
13 * @return {Array}
14 */
15
16exports.preparePopulationOptions = function preparePopulationOptions (query, options) {
17 var pop = utils.object.vals(query.options.populate);
18
19 // lean options should trickle through all queries
20 if (options.lean) pop.forEach(makeLean);
21
22 return pop;
23}
24
25/*!
26 * Set each path query option to lean
27 *
28 * @param {Object} option
29 */
30
31function makeLean (option) {
32 option.options || (option.options = {});
33 option.options.lean = true;
34}
35