diff options
Diffstat (limited to 'common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics')
2 files changed, 61 insertions, 0 deletions
diff --git a/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/person.js b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/person.js new file mode 100644 index 0000000..a93b8c6 --- /dev/null +++ b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/person.js @@ -0,0 +1,20 @@ +// import the necessary modules +var mongoose = require('../../lib'); +var Schema = mongoose.Schema; + +// create an export function to encapsulate the model creation +module.exports = function() { + // define schema + var PersonSchema = new Schema({ + name: String, + age: Number, + birthday: Date + }); + + // define a static + PersonSchema.statics.findPersonByName = function(name, cb) { + this.find({name: new RegExp(name, 'i')}, cb); + }; + + mongoose.model('Person', PersonSchema); +}; diff --git a/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/statics.js b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/statics.js new file mode 100644 index 0000000..610b2aa --- /dev/null +++ b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/statics/statics.js @@ -0,0 +1,41 @@ +var mongoose = require('../../lib'); + + +// import the schema +require('./person.js')(); + +// grab the person model object +var Person = mongoose.model('Person'); + +// connect to a server to do a quick write / read example + +mongoose.connect('mongodb://localhost/persons', function(err) { + if (err) { + throw err; + } + + Person.create({name: 'bill', age: 25, birthday: new Date().setFullYear((new Date().getFullYear() - 25))}, + function(err, bill) { + if (err) { + throw err; + } + console.log('People added to db: %s', bill.toString()); + + // using the static + Person.findPersonByName('bill', function(err, result) { + if (err) { + throw err; + } + + console.log(result); + cleanup(); + }); + } + ); +}); + +function cleanup() { + Person.remove(function() { + mongoose.disconnect(); + }); +} |