我try 用以下内容准备我的数据库字段进行地理编码:

MyCollection._ensureIndex({'data.address.located':'2dsphere'});

但是这个错误来了:

MongoError: Can't extract geo keys from object, malformed geometry?:
{ type: "Point", coordinates: [ 32.4586858, -110.8571443 ] }

我看不出这个领域有什么问题?知道吗?

当我查看this时,它显示如下:

The following example stores a GeoJSON Point:

{ loc: { type: "Point", coordinates: [ 40, 5 ] } }

推荐答案

问题是

[ 32.4586858, -110.8571443 ]

不是有效的坐标.顺序应该是经度,然后是纬度,而该坐标似乎是相反的(根据有效纬度范围为-90到90,并且-110.8571443在该范围之外的事实判断).

我想你的意思是:

{ type: "Point", coordinates: [ -110.8571443, 32.4586858 ] }

或者是其他输入错误.

Mongodb相关问答推荐

MongoDB.ArrayFilters出错:在路径中找不到标识符';elem';的数组筛选器

如何在Mongo Aggregate Query中创建集合的对象ID数组,并在列表中查找另一个集合中的ID

如何对嵌套在另一个数组中的数组中的字段执行查找?

MongoDB:如何通过增量向量递增整数向量

如何根据两个 struct 创建一个Mongo文档?

在MongoDB Aggregate for My BooksDB中将`$match`放在`$unwin`之前或之后的区别

从 Amazon S3(Next.js、Mongodb、Mongoose)删除图像

mongoDB中数组中的聚合和元素

Spring Boot 升级后未映射 Mongo 模板结果

MongoDB:使用数组过滤器进行更新插入

MongoDB 到 Snowflake 连续加载

为什么 local.oplog.rs 上每隔几分钟的活动就会锁定 mongo 客户端

将数据插入 MongoDB - 没有错误,没有插入

如何使用原子操作在一个文档中切换布尔字段?

Mongodb KeyFile 太开放权限

在 MongoDB 中合并两个集合

MongoDB - Permission denied for socket: /tmp/mongodb-27017.sock

处理Mongodb连接的正确方法是什么?

MongoDB $elemMatch $in

MissingSchemaError:Schema hasn't been registered for model