处理CastError:尝试在猫鼬中插入许多文档时,转换为[数据类型]的值失败

时间:2019-01-26 07:55:33

标签: mongodb mongoose

我正在尝试将对象数组作为新集合插入mongodb中。

首先,我要遍历数组并通过输出查找每个字段的类型,从而确定模式。

{ 
  field1: {String: 36, Number: 6},
  field2: {Number: 42},
  field3: {Boolean: 42}
  ...
}

由此,我建立了自己的架构

const mongoose = require('mongoose');

var collectionSchema = mongoose.Schema({ field1: String , field2: Number, field3: Boolean});

var Collection = mongoose.model('Collection',collectionSchema);
try {
   Collection.insertMany( [
       ...
   ] );
} catch (e) {
   console.log(e);
}

这给了我下面的错误, 猫鼬,CastError:在路径field1的值“ xxx”的强制转换为字符串失败。

我希望忽略field1中的6个数字值,并将其余的另存为字符串值。如何定义架构以实现此目标?

0 个答案:

没有答案