【问题标题】:Mongo GeoJSON: location object expectedMongo GeoJSON:预期的位置对象
【发布时间】:2014-02-11 18:05:28
【问题描述】:

我正在尝试将 GeoJSON 对象简单地插入到 Mongo 数据库中:

> db.users.ensureIndex({'loc': '2d'})
> db.users.insert({'loc': {'type': 'Point', 'coordinates': [50, 50]}})
location object expected, location array not in correct format

没有外部上下文 - 这是一个新的数据库和 mongo shell 中的一个新集合。我做错了什么?

【问题讨论】:

  • 你用的是什么版本的mongodb?我相信 GeoJSON 在 2.4+ 在 2.2 中你可能需要做 db.users.insert({'loc': [50.0, 50.0]})

标签: javascript json node.js mongodb database


【解决方案1】:

http://docs.mongodb.org/manual/applications/geospatial-indexes/

说你应该使用 2dsphere 来使用 GeoJSON

db.users.ensureIndex({'loc': '2dsphere'}) 

你使用的是旧方法

db.users.ensureIndex({'loc': '2d'})

你必须使用

db.users.insert({'loc': [50.0, 50.0]})

【讨论】:

  • GeoJSON 对象的正确用法不是更像 `{'loc': { "type": "Point", "coordinates": [ 51.883582055556, -176.64247991667 ] }
猜你喜欢
  • 2018-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-22
  • 2013-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多