■ Collection 클래스의 update_one 메소드에서 upsert 인자를 사용해 문서를 수정하거나 추가하는 방법을 보여준다.
▶ 예제 코드 (PY)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
from pymongo import MongoClient, ASCENDING databaseURL = "mongodb://localhost:27017/" mongoClient = MongoClient(databaseURL) testDatabase = mongoClient["testdb"] userCollection = testDatabase["user"] userCollection.delete_many({}) userList = [] for i in range(1, 6): user = { "email" : f"user{i}@sample.com", "password" : f"password{i}" } userList.append(user) userCollection.insert_many(userList) updateResult = userCollection.update_one( {"email" : "user6@sample.com"}, # 수정할 문서의 필터 {"$set" : {"password": "password6"}}, # 수정할 내용 upsert = True # 문서가 없는 경우 새 문서를 추가한다. ) print(updateResult) for user in userCollection.find(): print(user) |
▶ requirements.txt
1 2 3 4 |
dnspython==2.6.1 pymongo==4.7.2 |