#python #mongodb #visual-studio-code #pymongo
#python #mongodb #visual-studio-code #pymongo
Вопрос:
Я изучаю, как использовать Python и MongoDB с VisualCode, и мне было интересно, как я могу заставить Intellisense работать с пакетом PyMongo? Мне бы хотелось, чтобы я мог видеть, какие функции я мог бы использовать с MongoClient.
Это то, что мне нужно установить, или это то, что не поддерживается?
Комментарии:
1. Смотрите Python в Visual Studio Code и, возможно, другие предложения marketplace с аналогичной функциональностью. В этом нет ничего «специфичного для pymongo», поскольку «intellisense» просто собирается проверять используемые пакеты. Также существует документация , для которой знание того, что делают вещи, намного лучше для вас, чем просто запрос списка доступных функций класса. Чтение документации — это действительно способ обучения.
2. Есть одна специфичная для pymongo вещь 🙂 Стандартным способом работы с pymongo API является
db.nameOfTheCollection.find(query)
. Возможно, при завершении кода (в данном случае Intellisense) могут возникнуть проблемы с пониманием того, что это значит, потому что, конечно, уdb
объекта нет прямого атрибутаnameOfTheCollection
(все это выполняется динамически через__getattr__
).3. Также я считаю, что Visual Studio (по крайней мере, с C # и MS SQL) может быть настроена с завершением кода даже для схемы базы данных (имена таблиц, имена столбцов и типы …), но, возможно, нелегко для Python и pymongo / MongoDB.
4. @Messa ваш комментарий может быть принятым ответом
Ответ №1:
С pymongo
мы обычно используем базу данных и коллекцию таким образом:
client = MongoClient('localhost', 27017)
db = client.testDb
collection = db.users
Как упоминал @Messa, у intellisense возникают проблемы с динамическими атрибутами, подобными этому, если вы хотите активировать intellisense, вы должны использовать индексаторы MongoClient
для доступа к базе данных и коллекции
client = MongoClient('localhost', 27017)
db = client["testDb"]
collection = db["users"]