|
|
// 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, gender: String, likes: [String], // define the geospatial field
loc: {type: [Number], index: '2d'} });
// define a method to find the closest person
PersonSchema.methods.findClosest = function(cb) { return this.model('Person').find({ loc: {$nearSphere: this.loc}, name: {$ne: this.name} }).limit(1).exec(cb); };
mongoose.model('Person', PersonSchema); };
|