Я долго следовал по маршруту db.dropDatabase()
, однако, если вы пытаетесь использовать его для очистки базы данных между тестами, вы можете в конечном итоге обнаружить проблемы с ограничениями индекса, которые не соблюдаются после удаления базы данных. В результате вам нужно будет либо позаботиться о sureIndexes, либо более простой маршрут позволит полностью избежать dropDatabase и просто удалить из каждой коллекции в цикле, например:
db.getCollectionNames().forEach(
function(collection_name) {
db[collection_name].remove()
}
);
В моем случае я запускал это из командной строки, используя:
mongo [database] --eval "db.getCollectionNames().forEach(function(n){db[n].remove()});"