1

我正在使用 Node.js。如何在 Mongoose 架构上为多边形配置 2dsphere 索引?

我试过了:

  location_2dsphere: {
      type: { type: String }
      , coordinates: []
  },

但它不起作用!

4

2 回答 2

2

这就是你的做法

location_2dsphere: {
  'type': { type: String },
    coordinates: []
  }

所以关键是让第一个type成为'type'

然后记得在你的字段上创建一个2dsphere索引!

在 Mongoose 中,当您想将字段命名为type或任何其他保留字段时,只需使用括号强制进行字符串转换。

于 2013-07-05T22:05:36.197 回答
0

在顶层:

db.collections.<yourcollection>.createIndex({ <location_field> : "2dsphere" })

在哪里db = mongoose.connection

请注意,在集合本身之前有一个“集合”属性。如果它不起作用,请检查 console.log 中的 db 对象:

console.log(db)
于 2021-06-01T09:56:34.270 回答