带有多个输入的全文搜索表单

时间:2014-11-11 07:16:37

标签: mongodb search full-text-search mongodb-query

我尝试创建具有三个文本输入的搜索表单:

  • 项目描述;
  • 型号名称;
  • ctg name。

用户可以填写所有这些输入并搜索具有下一个文档结构的集合:

{
"id" : 123,
"description" : "Ricoh Aficio CL-4000 Type 245 Toner Yellow",
"pnbrs" : [ 
    "888281", 
    "K174/G", 
    "K174G"
],
"model" : [ 
    {
        "id" : "1625",
        "name" : "Ricoh Aficio CL4000DN"
    }, 
],
"ctg" : [ 
    {
        "id" : "1472",
        "name" : "Ricoh Type 245 Toner"
    }
],
"brand" : "Ricoh"

}

我也创建了文本索引:

    db.products.ensureIndex({ 
        description: "text",
        "model.name" : "text", 
        "ctg.name" : "text"
    });

如何通过这三个文本输入组织相关的全文搜索,并在最高分项的顶部项目?

例如,用户想要通过“model.name”搜索:“XXX”,如何在搜索结果中只留下“model.name”中包含“XXX”字符串的项目,并排除那些“XXX”中的字符串“description”或“ctg.name”字段?

0 个答案:

没有答案