嵌套模式字段上的Mongoose文本索引

时间:2016-08-07 00:50:14

标签: javascript node.js mongodb

我有以下架构:

const Schema = ({
  metadata: {
    title: String,
    ...
  },
  ...

});

我想在metadata.title上创建一个文本索引。我可以在任何第一级属性上成功创建文本索引,但是我遇到了嵌套标题的问题。

我尝试过以下代码,但无济于事。我的语法错了吗?我对文档没有好运......

Schema.index({ 'metadata.title': 'text' });

搜索:

Schema
  .find(
    { $text : { $search : req.params.query } },
    { score : { $meta: "textScore" } })

2 个答案:

答案 0 :(得分:2)

正如@JohnnyHK指出的那样,事实证明我原来的是正确的。我一定有其他一些错误导致索引无效......

答案 1 :(得分:0)

const Schema = ({
  metadata: {
    title: {
      type: String,
      index: true
      }
    ...
  },
  ...

});