4

在 mongodb 中使用关联数组是否被认为是不好的做法?我很好奇为什么 mongoose 似乎没有在它的 Schema 定义中提供这个。

4

2 回答 2

3

如果通过“关联数组”,您的意思是“对象”,那很好用。您可以只使用常规的旧“对象”,也可以指定特定的属性,也可以使用“mongoose.Schema.Types.Mixed”来允许不同的类型。

{
  //regular old javascript/json data types
  created: Date,
  //this works just fine
  statistics: Object,
  //or you can specify the shape of the object
  address: {state: String, line1: String},
  //for the extra features you get with a true subdocument
  nested: [SomeOtherMongooseSchema],
  //Could be array, boolean, number, whatever. Can vary with each document.
  grabBag: mongoose.Schema.Types.Mixed 
}
于 2013-10-02T19:29:10.020 回答
2

考虑到您使用猫鼬版本 > 5.1.0

如文档中所述:https ://mongoosejs.com/docs/schematypes.html#maps

您可以通过这种方式使用 Map 来指定关联数组:

  myAssociativeArray: {
    type: Map,
    of: String
  }

顺便说一句,我不知道您是否可以使用此语法指定密钥类型

于 2018-10-26T14:49:38.747 回答