2016-12-09 3 views
0

MongoDB's (и pymongo's) ensure_index устарел после версии 3.0. Что следует использовать, если я хочу только удалить индекс в коллекции, если он существует? документацияЧто использовать вместо security_index() в pymongo?

PyMongo утверждает, что drop_index«Может быть использован на несуществующих коллекции или коллекции без индексов», но есть OperationFailure приподнятой, если я пытаюсь бросить несуществующий индекс из коллекции. До версии 3.0 я мог использовать ensure_index, чтобы увидеть, существует ли индекс, прежде чем что-либо делать, что мне теперь делать?

ответ

0

Видимо Есть два способа:

  1. попробовать/за исключением заявления в Python с исключением заявления будучи pymongo.errors.OperationFailure, или, что еще лучше для моего случая:
  2. db.my_collection.drop_indexes() работы с коллекциями withouts индексов.