如何使用Plastic / Elasticsearch搜索相关数据?

时间:2017-08-02 21:51:15

标签: laravel elasticsearch indexing eloquent relationship

我在电子商务(如)项目中使用Laravel 5,Elasticsearch 5和Plastic。通过使用Elasticsearch和Plastic,我能够创建索引数据,与强大的搜索工具结合,同时仍然使用Eloquent模型。通过这种方式,我期望能够做出我们可以认为非常繁重的查询(有很多JOIN和LIKE),简单快速。 每天预计会有6300万条查询...

说,我遇到以下情况的问题:

  

我有一个表部门和一个表Employee,它们是相关的。我   搜索部门并使用可能仅存在的部门   Employee表中的一些列,是否有可能得到所有   有关键字的员工的部门?

实施例: 在使用关键字“Xbox”搜索部门时,系统应该能够为所有部门提供在其个人资料中提及“Xbox”的员工。

1 个答案:

答案 0 :(得分:0)

在试验后,找到了解决方案。你必须:

  1. 关联Laravel中的模型(查看Laravel文档中的Eloquent Relationships)
  2. 使用buildDocument()函数
  3. 在模型中进行适当的映射
  4. 使其可搜索(as per example
  5. 重建您的映射
  6. 重新生成索引
  7. 就是这样。