将点插入与架构不同的Mongo集合

时间:2016-05-27 15:20:59

标签: node.js mongodb schema

我还没有找到答案,当我尝试将点添加到Mongo集合中时会发生什么,该集合具有比声明的模式更多或更少的字段。请考虑使用mongoose的以下示例:

var PointSchema = new Schema({
  location: {
    type: [Number]  
  },
  name: String 
})

如果我尝试插入仅包含位置字段的文档,会发生什么?

如果我尝试插入一个包含模式中所有字段但是在模式中没有声明其他字段的文档,会发生什么?

我也很好奇,如果我只使用mongo shell而不是猫鼬,答案会有所不同。

1 个答案:

答案 0 :(得分:0)

  1. 如果您尝试使用已注册的架构进行mongoose查询 一个。如果您插入单个字段,它将起作用,因为没有任何字段将“字段”描述为“必需”字段。如果你想避免遗漏字段,你可以做。 湾如果从node.js插入未在架构中声明的字段,则会收到400 Bad请求。 C。但是,如果您尝试从mongodb shell中插入任意数量的字段到任何给定的文档集合中,它就可以正常工作