2015-01-07 2 views
0

mongoDB 메서드 업데이트를 사용하여 annotations 컬렉션의 기존 문서를 수정했습니다. 파이썬 스크립트로 작성 내 명령은 다음과 같습니다mongodb 업데이트 메소드가 '_keys'확장자를 가진 새로운 콜렉션을 생성하는 이유는 무엇입니까?

db['annotations'].update({'_id': annotation['_id']}, {'$set': {'orthologs': orthologs}}, False) 

필드 orthologsorthologs라는 변수에 의해 주어진 새로운 서브 필드 UniProt를 포함하도록 수정해야합니다.

놀랍게도 새로운 컬렉션은 annotations_keys이라는 이름으로 만들어졌습니다. 여기에는 하나의 문서 만 포함됩니다 : { "_id" : "UniProt", "value" : null }.

정상입니까? 그렇지 않은 경우 문제가 무엇입니까?

+0

됩니다 컬렉션 이름? –

답변

0

예 라파엘, 확실합니다.

새로 생성 된 컬렉션의 이름은 'annotationS'와 같이 'annotationS'+ '_ keys'입니다. 또한, 주석 [ '_ ID는'] DB에 요청에 해당하는 각 문서 ('주석') 발견 루프에서 온다 : 당신이로`annotations'`을 가하고 있는지

annotation = db['annotations'].find_one({'class': 'CDS', 'locus_tag': annotated_molecule.name})