首页 > 解决方案 > 解析服务器全文搜索不适用于指针列?

问题描述

我在 heroku 上使用带有 mlab 的解析服务器,我有两个表链接 1. 艺术家 2. 报价

每个报价都有一个指针列artist

我创建了一个文本索引,这是视图:

  "v": 2,
  "key": {
    "_fts": "text",
    "_ftsx": 1
  },
  "name": "OfferSearchIndex",
  "ns": "heroku_46tdsp6m.Offer",
  "weights": {
    "_p_artist": 1,
    "_p_artist.firstname": 1,
    "_p_artist.lastname": 1,
    "category": 1,
    "drscription": 1,
    "drscription_de": 1,
    "drscription_fr": 1,
    "drscription_it": 1,
    "drscription_ru": 1,
    "medium": 1,
    "movement": 1,
    "title": 1,
    "title_de": 1,
    "title_fr": 1,
    "title_it": 1,
    "title_ru": 1
  },
  "default_language": "english",
  "language_override": "language",
  "textIndexVersion": 3
}

现在我有以下云查询来搜索报价:

  var offerQuery = new Parse.Query("Offer");
  offerQuery.include('artist');
  offerQuery.fullText('artist.firstname', request.params.wildcard);
 return offerQuery.find({
                    useMasterKey: true
                
            }, function(error) {
                console.log('#getOfferForAdmin error 1', error);
                return error;
            })


但是这个查询没有根据艺术家的名字和姓氏搜索报价。它只返回那些匹配商品标题、商品描述的记录。

我使用以下命令创建了一个索引:

db.Offer.createIndex( { "_p_artist": "text","_p_artist.firstname": "text", "_p_artist.lastname": "text", title: "text", title_de: "text", title_fr: "text", title_it: "text", title_ru: "text", drscription: "text",  drscription_de: "text", drscription_fr: "text", drscription_it: "text", drscription_ru: "text",  category: "text", medium: "text", movement: "text" }, {name:"OfferSearchIndex"}, { default_language:"none" } )

标签: mongodbparse-platformmongodb-queryparse-server

解决方案


推荐阅读