我使用 mongoimport 导入了一个 csv 文件。这个数据集要具体:
我遇到的问题与该description
领域有关。
[{"landing_point_id":3522,"latlon":"51.898325,-8.472768","name":"Cork, Ireland"}]
我认为这是一个对象数组,所以我正在为它制作一个猫鼬模型,如下所示:
description: [{
landing_point_id: Number,
latlon: String,
name: String
}],
但这给了我一个空数组。如果我将类型设置为description
,String
我会得到值——但当然是作为字符串,所以属性是不可访问的。
"description" : "[{\"landing_point_id\":8398,\"latlon\":\"52.207114,1.620294\",\"name\":\"Sizewell, United Kingdom\"}]"
所以问题似乎是该领域description
是String
我希望它成为Array
.
按照此处的答案,我尝试将其从字符串转换为数组,但没有运气。
db.cables.find().snapshot().forEach(function (el) {
el.description_array = [ el.description ];
db.cables.save(el);
});
这只是将字符串包装在另一个数组中。
"description_array" : [ "[{\"landing_point_id\":8398,│ col10: '',
\"latlon\":\"52.207114,1.620294\",\"name\":\"Sizewell, United Kingdom\"}]" ]
同样的
el.description_array = new Array(el.description);
任何想法如何解决这个问题?
在导入之前可以在 csv 文件中编辑的内容以使 mongoimport 正确解释它?