我在NodeJS上使用了mongoose并且具有以下模型:
var Post = new Schema({
...
location: [Number, Number],
...
});
Post.index({ location: '2d' });
Post.set('autoIndex', false);
module.exports = mongoose.model('Post', Post);
当用户对所有帖子进行查询时,他们可以在附近添加一个可选的查询参数,以查找位于附近的位置
的帖子GET /api/1.0/posts?near=12.3244,-1.23244
为了实现这一点,我正在做以下事情:
if(req.query.near) {
var loc = req.query.near.split(',');
var area = { center: loc, radius: 10, unique: true, spherical: true };
if(loc.length === 2) {
query
.where('location')
.within()
.circle(area);
}
}
然后我执行查询。 我是使用this mongoose文档
完成的我有3个问题:
我很感激任何帮助,尤其是问题2和1 谢谢:))