mongodb - 将多边形插入 MongoDB 写入空值而不是坐标(在 Meteor 1.1.0.2 上)

标签 mongodb meteor geojson

我正在尝试在我的 Meteor 应用程序上将 GEOJSON Multipolygon 对象写入 Mongo。

该对象包含几个这样的对象:

var myPolygons = [ {"type":"Feature","geometry":{"type":"MultiPolygon","coordinates":[[[[34.826198,32.063821],[34.82618,32.063779],[34.824903,32.063947],[34.820535,32.064516],
...
[34.826329,32.06418],[34.826272,32.064019],[34.826217,32.06387],[34.826198,32.063821]]]]},"properties":{"cartodb_id":12,"category":"someCategory","name":"Some Name"}} ]

多边形在 http://geojsonlint.com/ 上通过(=正确绘制)

在我的数据库上使用 find() 显示项目已插入,但它们包含 null 而不是坐标,如下所示:

{ "_id" : "9mraZmupTY5ZRN2BD", "type" : "Feature", "geometry" : { "type" : "MultiPolygon", "coordinates" : [ [ [ null, null, null, null ] ], [ [ null, null, null, null ] ], [ [ null, null, null, null ] ] ] }, "properties" : { "cartodb_id" : 12, "category" : "someCategory", "name" : "Some Name" } }

我使用的是简单的插入,没什么特别的:

_(myPolygons).each(function (item) {
  SomeDB.insert(item);
});

为什么会这样?是否存在我不知道的 MongoDB 嵌套限制?

最佳答案

我对 GeoJSON 也有类似的问题。问题是我正在从文本文件复制多边形并尝试创建一个数组。

相反,这对我有用

var state = JSON.parse(Assets.getText('states.txt')); // state.txt is a file in 'private folder' of meteor
    //  console.log(JSON.stringify(state));
    if (State.find({}).count() < 1) {  // Checking if 
        _.each(state.features, function (s) {
            console.log(JSON.stringify(s));
            var a = new Object();
            a.loc = s.geometry; // am storing in LOC so that i can do a geoSpatial Index on this Field
            State.insert(a); // State is My Collection
        })
    }

请注意,此代码在服务器上运行。 我没有尝试从客户端插入数据。

希望对你有帮助

关于mongodb - 将多边形插入 MongoDB 写入空值而不是坐标(在 Meteor 1.1.0.2 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33340427/

相关文章:

forms - Meteor:如何在一组表单字段中接受用户输入

javascript - 如何使用一组 ID 仅查找集合中的最新文档

python - 在Django GeoJSON序列化器字段中指定相关模型的字段

python - PyMongo Shapely GeoJson 转换

node.js - MongoDB - 错误 : document must have an _id before saving

javascript - Express js + mongodb 显示登录用户的特定信息

添加项目时 meteor 丢失滚动条

javascript - 将 geojson 多边形转换为不同的坐标

javascript - 如何正确地增加 mongoDB 中的许多日期?

javascript - 使用 Node 管理 mongoDB 连接的正确方法是什么?