MongoDB确保索引不停止重复

我试图阻止在我的Mongo DB集合重复,但他们仍然进入。我正在阅读数据从Twitter和存储它像:

var data = { user_name: response[i].user.screen_name, profile_image: response[i].user.profile_image_url, content: { text: response[i].text }, id: response[i].id_str, }; 

我有以下来阻止任何重复:

 db[collection].ensureIndex( { id: 1, "content.text": 1 }, { unique: true, dropDups: true } ); 

ID字段正在工作,没有重复出现,但“content.text”字段不起作用,重复出现。 任何想法为什么?

当对组合索引强制执行唯一约束时,只有文档对idcontext.text字段具有相同的值,且两个文档都不是单独使用任何一个键时,才会将两个文档视为相同。

为了对字段idcontext.text分别执行唯一的约束,可以像下面那样执行它:

db.col.ensureIndex({"id":1},{unique:true}) ,对于其他字段也是如此。