Мангуст - как добавить 2dsphere индекс на пользовательский тип?
Я использую Mongoose с Mongoose-geojson-schema, но не могу добавить 2dsphere
Индекс на моем поле:
new Schema({
district: {
type: String,
trim: true,
unique: true,
required: true
},
area: {
type: GeoJSON.FeatureCollection,
index: '2dsphere'
}
});
Получение такой ошибки:
/Users/dmitri/api/node_modules/mongoose/lib/schema.js:479
throw new TypeError('Undefined type `' + name + '` at `' + path +
^
TypeError: Undefined type `2dsphere` at `area.index`
Did you try nesting Schemas? You can only nest using refs or arrays.
1 ответ
Я думаю, что вы не можете использовать Mongoose-geojson-schema таким образом, он портит атрибуты 'type' - попробуйте это:
var mySchema = new Schema({
district: {
type: String,
trim: true,
unique: true,
required: true
},
area: GeoJSON.FeatureCollection
});
mySchema.path('area').index({ type: '2dsphere'});