问题标签 [foselasticabundle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3447 浏览

symfony - 如何创建从 Elastic 结果到 Doctrine 实体的自定义转换器

tl;博士

如何将基础转换器从 Elastic 结果扩展/覆盖到 FosElasticaBundle 中的 Doctrine 实体?

细节

我想更改transform方法,FOS\ElasticaBundle\Doctrine\AbstractElasticaToModelTransformer以便可以向检索到的实体添加自定义属性。

我通过破解该方法进行了测试,它完全按照我的意愿工作。

在不破解该方法的情况下覆盖/扩展该方法的最佳解决方案是什么?

0 投票
1 回答
55 浏览

mongodb - FosElasticaBundle 和竞态条件

我将 Elastic Search 与 FOSElasticaBundle 一起使用,当我在 MongoDB 数据库中添加一个新对象时,Elastic 侦听器会触发并为其编制索引。

我的问题是当我添加新对象和页面时,您可以看到所有对象都已刷新,有时,Elastic 尚未编制索引,并且新对象未显示在列表中。

如果我确实睡了两秒钟或忙于等待对象被索引,它可以工作,但我正在寻找更智能的解决方案。

我尝试禁用侦听器并使用 ObjectPersister:::insertOne($object) 强制索引,但我又遇到了同样的问题。

Mi Elastic配置为:

谢谢并恭祝安康。

0 投票
1 回答
314 浏览

symfony - 在弹性搜索中搜索不同的日期格式

我已经使用以下配置从我的 mysql 数据库中索引了一个日期列

如何使用不同的日期格式查询弹性搜索?例如,当我搜索“10 月 1 日”或“10 月 1 日”时,任何以 2015-10-01 作为索引的项目都应该是可搜索的

有没有办法在弹性搜索中做到这一点,或者我必须在将日期传递给查找器之前对其进行格式化?

0 投票
1 回答
1244 浏览

php - 在 symfony2 项目中使用 elasticsearch 进行范围过滤查询

在我的控制器操作中,我使用上面的代码来过滤 $min、$max(传递给此控制器的变量)的价格之间的弹性搜索数据。不知何故,返回给我的数据不是我的查询的正确结果。

我是否使用错误的方法来实现 FOSElasticaBundle 方法。此外,如果有人可以分享一些关于如何使用 symfony2 的 elasticsearch 或如何使用 FOSElasticBundle 进行查询的链接或教程,那将有很大帮助。

0 投票
2 回答
3585 浏览

symfony - 填充 FOSElasticaBundle/Symfony2 时 ResponseExeption 出错

我正在尝试让 FOSElasticaBundle 工作。ElasticSearch 实例在 localhost:9200 上运行并响应。

我按照文档中的每个步骤https://github.com/FriendsOfSymfony/FOSElasticaBundle/blob/master/Resources/doc/setup.md

但在最后一步,我在控制台中收到此错误:

似乎“__construct”-Function 必须有 3 个参数,但其中只有 2 个。我只是尝试添加“NULL”参数以使其工作,但随后另一个函数引发错误。

这是个常见的问题吗?我该如何解决?

0 投票
0 回答
411 浏览

symfony - Elastica FOSElastica Symfony2 分析器不工作

我正在弄清楚 Elastica/FOSElastica 是如何工作的。对于非常简单的搜索查询,我让它运行良好,其中产品名称与我的搜索字符串完全匹配。

由于这不是一种好的搜索方式,我必须添加分析器来执行更好的搜索结果。但他们不工作..

我试图复制并粘贴此示例代码(当然插入了我的索引/类型)=> http://obtao.com/blog/2013/10/configure-elasticsearch-on-an-efficient-way/#comment-16733

所以,这是我的问题:我如何让我的分析仪工作?我想,我必须在我的控制器中应用它们,但我不完全确定我会怎么做......

这是我的配置

这是我的控制器:

0 投票
1 回答
997 浏览

symfony - 使用 foselasticabundle 请求添加过滤器

我有一个 sf2 服务,可以在带有 foselasticabundle 的 elasticasearch 服务器上发出搜索请求。最初我用过滤器提出了一个请求:

在我的控制器中,我得到了这个请求的计数:

此代码工作正常。我想添加一个基于数组的过滤器:

我没有找到在我的查询中添加这个新过滤器的好方法。我希望你能帮助我处理这个案子。提前致谢

0 投票
1 回答
1000 浏览

php - Symfony 弹性更新

我有“friendsofsymfony/elastica-bundle”:“~3.0”“ruflin/elastica”:“~2.1,<2.3”和php 5.5.9,我们将elasticsearch从1.7.3更新到2.0,当我尝试更新或创建像 fos:elastica:populate 这样的索引我有错误

我尝试找到如何解决这个问题,更新后,找不到。我尝试将 FOSElasticaBundle 更新为 dev-master / 3.2.x-dev 但仍然有问题。现在elasticsearch 2.0有解决方案了吗?

0 投票
1 回答
545 浏览

php - elasticsearch:对给定值的给定字段应用额外的提升

我有一个使用FOSElasticaBundle的 Symfony 2.7.6 应用程序。

我有两种类型的搜索:

  1. 一个没有关键字,在这种情况下只应用过滤器,所有文档的分数都是 1(有时是随机顺序),在这种情况下,主要查询是:

    /li>
  2. 一个带有关键字,应用相同的过滤器,并且匹配再次运行一个字段列表(一个具有不同的提升)。结果按分数存储。现在的主要查询是:

    /li>

这两个搜索运行良好。

现在对于这两种搜索,我希望对给定的字段值应用动态提升。比方说:if field5 == 'value' then add boost 15,(15只是一个例子,我们将做测试,看看必须选择什么额外的提升值)这里使用的值不是关键字,它是另一个参数。

我尝试使用FunctionScoreBoosting查询但没有成功。任何带有非常简单的弹性搜索查询的提示将不胜感激。

0 投票
0 回答
102 浏览

symfony - Symfony2 FOSElastica 和 Elasticsearch

我将此配置用于弹性搜索驱动的搜索功能。现在,当我填充索引时,搜索功能工作正常,我得到了想要的结果。但是,经过一段时间(几个小时)后,搜索停止工作,结果完全错误。该应用程序使用 cron 作业每 15 分钟更新一次配置(和其他数据)中记录的实体。我应该在实体更新时更新索引吗?如果是,我该怎么做?其中一些是相关的,如团队和球员。

我正在使用 FOSElasticaBundle 3.0。