0
我試圖查詢基於位置的模型時出現此錯誤。
我試圖查詢基於位置的模型時出現此錯誤。
在SO上結合了一些答案後,這裏是完整的實現。
型號
// model.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ModelSchema = new Schema({
location: {
type: [Number],
index: '2dsphere'
}
});
ModelSchema.index({ location: 1});
module.exports = mongoose.model('model', ModelSchema);
控制器
// controller.js
Model = require('path/to/model')
exports.getByLocation = function(req, res, next) {
var coords = [+req.query.lon, +req.query.lat];
Model.where('location').near({
center: {
type: 'Point',
coordinates: coords
}
})
.then(function(docs) {
res.json(docs);
})
.catch(next);
}
希望這有助於:)