2016-08-16 6 views
0

내가 찾아 MongoDB를에서 문서를 업데이트하는 파이썬 프로그램을 작성하는 것을 시도하고 정의되지 않은 : (pymongo : 전역 이름 'ReturnDocument은'

db.collection.find_one_and_update({"Machine": "24", "Available": True}, 
            {"$set": {"Overview.Available": False}}, 
            projection= {"_id": 0, "Machine": 1, "Available": 1}, 
            return_document= ReturnDocument.AFTER) 

을하지만 다음과 같은 오류 메시지가지고있어 내가 분명히 당신은 먼저 ReturnDocument 클래스를 가져와야

NameError: global name 'ReturnDocument' is not defined

답변

0

)가 제대로 return_document를 사용하지만, 모든 pymongo 문서는 내가 말했다하지 해요. 스크립트의 상단이 추가 :

from pymongo.collection import ReturnDocument 

자세한 문서를 : http://api.mongodb.com/python/current/api/pymongo/collection.html#pymongo.collection.ReturnDocument

+0

지금 작동하는 것 같다, 감사합니다! pymongo와 pymongo.collection 모두 작동하는 것 같습니다 ... 다른 하나보다 낫지 않습니까? ". 콜렉션"은 무엇을합니까? –

+0

필자는'pymongo'에서 직접 가져 오기를 시도한 적이 없습니다. 항상 문서화 된 경로를 사용하십시오. – masnun

+0

작은 패키지를 사용하는 것이 더 효율적입니다. 나는 pymongo.collection을 사용할 것이다. –