如何从 mongo 记录中获取缺失的字段

Posted

技术标签:

【中文标题】如何从 mongo 记录中获取缺失的字段【英文标题】:How to get the missing field from a mongo record 【发布时间】:2018-11-29 12:44:14 【问题描述】:

我的记录中有数据:


"test" : "388383",
"geo1" : "[-75.603554,35.888575]",
"zip" : "[27959]"


var det = new Schema(  test: String)

我的记录中有 zip 字段,但是当我控制台它没有出现。

Data.find().exec(function(err,data)
      console.log(data[0].zip)  ------> 'undefined'
      console.log(data[0].geo1) ------> "[-75.603554,35.888575]"

);

我没有在我的模型(两个字段)中声明它,但我得到的是 geo1 而不是 zip。

【问题讨论】:

数据是如何插入到数据库中的? 架构是什么? @Frax,它是一个 c 文件,我刚刚通过 $ mongoimport -d mydb -c things --type csv --file locations.csv --headerline 导入它 不可能...如果这些字段在集合中,那么它们将会出现...无论它们是否在模式中定义...您犯了一些错误或使用了一些投影 我通过填充方法获取它们是一个原因。 【参考方案1】:

已完全定义您的架构。

而不是这个

  var det = new Schema(  test: String)

试试

  var det = new Schema(  test: String,geo1:[Number],zip:[Number]);

因为如果您不让架构定义每个字段,您将无法从数据库集合中获取所有数据。

【讨论】:

以上是关于如何从 mongo 记录中获取缺失的字段的主要内容,如果未能解决你的问题,请参考以下文章