MongoError: пользователю не разрешено создавать двумерный индекс - PullRequest
1 голос
/ 01 апреля 2019

Я создаю программу для перечисления близлежащих объектов на основе текущего местоположения пользователя.

Для этого я использую старую систему [долгота, широта]. Я буду хранить эти координаты в поле location.

Следующая ошибка появляется при попытке создать 2d index ::

MongoError: user is not allowed to do action [createIndex] on [data.system.indexes]

Однако я dbAdmin, поэтому у меня есть все права на создание и удаление индексов.

Мой код ::

const uri = "mongodb:// <link with password and dbname>"
const MongoClient = require("mongodb").MongoClient;

function connect(){
    MongoClient.connect(uri, {useNewUrlParser: true}, (err, client)=>{
        if(err) throw err;
        else{
            const db = client.db(dbname);

            db.collection("collection").createIndex({"location": "2d"})
        }
    });
}

Также, пожалуйста, не закрывайте этот вопрос как дубликат; в этом случае пользователь не является проблемой (поскольку я являюсь администратором), и я также не перепутал пароль.

Я могу просто создать text индексы и могу делать такие вещи, как удаление индексов и удаление всего db, поэтому, конечно, я могу создать индекс 2d?

Спасибо!

...