2015-01-07 35 views
0

我使用mongoDB方法更新来修改名为annotations的集合中的现有文档。我的命令,写的Python脚本是:为什么mongodb update方法创建一个扩展名为'_keys'的新集合?

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

领域orthologs必须被修改,以包含由名为orthologs变量赋予了新的子UniProt

令人惊讶的是,创建了一个名为annotations_keys的新集合。它只包含一个文件:{ "_id" : "UniProt", "value" : null }

这是正常的吗?如果不是,问题是什么?

+0

你确定你把''annotations''作为收藏名称? –

回答

0

是的拉斐尔,我敢肯定。

新创建的集合实际上被命名为'annotationS'+'_ keys',就像最初的集合'annotationS'一样。另外,注释['_ id']来自循环,该循环在db中找到与该请求相对应的每个文档('注释'):

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