mongo本地ensureIndex不创build索引

我正在使用mongodb本地驱动程序的节点。 检索集合后,我调用ensureIndex({ keywords: 1}) 。 当我检查mongo控制台时,当我调用db.mycol.getIndexes()时,什么也不显示。

我究竟做错了什么?

API文档有点帮助: http : //mongodb.github.com/node-mongodb-native/api-generated/db.html#ensureindex

你应该在数据库对象上调用ensureIndex,而不是集合。 这与JavaScript控制台相矛盾。

我遇到了类似的问题,问题是我没有打开数据库之前调用ensureIndex。 我正在做的是(咖啡剧本)

 db.collection('resources').ensureIndex {"$**": "text"}, {name: "email_index_text"},(err, indexName) -> console.log indexName console.log err db.close() 

什么工作是

 db.open (err,database) -> db.collection('resources').ensureIndex {"$**": "text"}, {name: "email_index_text"},(err, indexName) -> console.log indexName console.log err db.close() 

第一个片段什么都没做。 没有创build索引,也没有抛出错误。