Skip to content

Instantly share code, notes, and snippets.

@aheckmann
Created March 25, 2013 22:50
Show Gist options
  • Select an option

  • Save aheckmann/5241574 to your computer and use it in GitHub Desktop.

Select an option

Save aheckmann/5241574 to your computer and use it in GitHub Desktop.
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var assert = require('assert')
console.log('\n===========');
console.log(' mongoose version: %s', mongoose.version);
console.log('========\n\n');
var dbname = 'testing_geojsonPoint';
mongoose.connect('localhost', dbname);
mongoose.connection.on('error', function () {
console.error('connection error', arguments);
});
// schema
var schema = new Schema({
loc: {
type: { type: String }
, coordinates: []
}
});
schema.index({ loc: '2dsphere' });
var A = mongoose.model('A', schema);
mongoose.connection.on('open', function () {
A.on('index', function (err) {
if (err) return done(err);
A.create({ loc: { type: 'Point', coordinates: [-179.0, 0.0] }}, function (err) {
if (err) return done(err);
A.find({ loc: { $near: { type: 'Point', coordinates:[-179.0, 0.0] }}}, function (err, docs) {
if (err) return done(err);
console.log(docs);
done();
})
})
})
});
function done (err) {
if (err) console.error(err.stack);
mongoose.connection.db.dropDatabase(function () {
mongoose.connection.close();
});
}
@asadsohail-x
Copy link
Copy Markdown

This is 2022 and this just saved my job!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment