MongoDB Python Codio Добавить новый документ в коллекцию
Поэтому я должен использовать Codio для создания файла Python, который создает новый документ для существующей коллекции MongoDB под названием "инспекции" в базе данных "город", но он не добавляет новый документ в коллекцию.
import json
from bson import json_util
from pymongo import MongoClient
connection = MongoClient('localhost', 27017)
db = connection['city']
collection = db['inspections']
def insert_document(document):
try:
result=collection.save(document)
except ValidationError as ve:
abort(400, str(ve))
return result
def main():
print "Hi"
myDocument = { "id" : "0203-2019-ssp1",
"certificate_number" : 5382334,
"business_name" : "BUILDING TO SERVE INC.",
"date" : "Jul 22 2015",
"result" : "Violation Issued",
"sector" : "Home Improvement Contractor - 100",
"address" : [ "city" : "JAMAICA", "zip" : 11432, "street" :
"HILLSIDE AVE", "number" : 17939 ] }
print insert_document(myDocument)
main()
Вот так я запустил файл Create.py в терминале Codio.
После запуска Create.py я сделал db.inspections.find({"id":"0203-2019-ssp1"}), но его там нет.
1 ответ
pymongo.collection.Collection.save
является устаревшим методом в версии 3.0 и выше из библиотеки Pymongo 1
В идеале вы хотите использовать pymongo.collection.Collection.insert_one
2
def insert_document(document):
try:
result=collection.insert_one(document)
except ValidationError as ve:
abort(400, str(ve))
return result