Mongoose混合了SchemaType

时间:2016-09-12 03:46:19

标签: mongodb mongoose mongoose-schema

我无法理解mongoose schemaType用于什么目的。如果有人能够解释它会有所帮助。

当我们在mongoose上执行findOne()时,我必须从模式中引用另一个模式,我想知道是否可以一起获取所有模式的详细信息。

1 个答案:

答案 0 :(得分:1)

混合模式意味着您想要的类型。如果你输入一个字符串,数字,日期,mongoose将让你这样做。但是根据documentation,mongoose ref不适用于混合。

Note: ObjectId, Number, String, and Buffer are valid for use as refs.

如果您使用混合,并且参考它,您将无法再查询它。

如果你从头开始(删除数据库并重新重新插入),请使用ObjectId而不是Mixed。

var storySchema = Schema({
  author : { type: ObjectId, ref: 'Person' },
});

如果您希望保留旧数据库,最好的方法是将mixed更改为字符串

  var storySchema = Schema({
      author : { type: String, ref: 'Person' },
    });