问题标签 [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 回答
500 浏览

symfony - How do I search only first object in an array of nested objects using ElasticSearch

I'm using ElasticaBundle and ElasticSearch with Symfony2 in a system I've written. A 'person' can have many 'positions' in their work history. The positions are sorted by date desc, and in order to find someone's current position with PHP I retrieve and read the first object in the array.

I am struggling to search only the current or first position using ElasticSearch. I have set the mappings upas nested, and I am able to perform a Nested Query returning a 'person' who has a 'position' that matches all my criteria. What I can't do is work out how to only search for the criteria in the 1st listed 'position'. Does anyone have any ideas to set me off on the right path?

The only options I can think of at the moment are: maintain an order value in each object so I can pick out the 1st, or create another field in the entity that only has a relationship, with the 1st position

0 投票
1 回答
287 浏览

symfony - Elasticsearch - foselastica 按整数排序,结果很奇怪

我想根据嵌套(就业)对象的数量对公司的结果进行排序,

我向保存计数的公司实体添加了一个额外的字段,例如:

并将其添加到索引中,例如:

该字段已正确编入索引,我得到如下点击:

我添加了类似:

结果似乎从“ 9, 8, 7, 6 ...”正确排序,

但由于某种原因,在中间的某个地方有一些结果,员工人数较高

例如这个:

我希望这个结果在我的第一个示例之上,但它介于 2 和 1 之间

所以有两个猜测,它是从 0-10 排序的,所有大于 10 的都被忽略

或者 elasticsearch 或 foselastica 包中存在一些错误,

继承人的结果查询:

有人知道吗?

0 投票
1 回答
1555 浏览

symfony - elastica 搜索如何将 Elastica\Result 转换为实际的学说对象

我正在将 FOSElasticaBundle 与 symfony2 和教义 2 一起使用。

我很难理解如何从搜索结果中检索实际的教义对象。我的印象是这是默认行为,但我得到了这种结果:

这是我的 FOSElasticaBundle 配置:

我的控制器中的代码:

我知道我可以使用自定义存储库方法来获取对象,但是在达到那个点之前,获取对象的默认方法是什么?(这里我想要一个食谱对象,我的模型的一个实例)。

非常感谢 !

0 投票
1 回答
752 浏览

symfony - Elastica 结果:搜索整个索引时如何获取教义对象

继续我对 FOSElasticaBundle 的发现。

现在我知道如何检索实际的学说实体:

与 Elastica\Result 实例相反:

看来我可以打电话

但我不能打电话

那么我如何检索整个索引的学说对象结果呢?

0 投票
3 回答
726 浏览

symfony - ElasticSearch 找不到 UTF8 字符

我将 ElasticSearch 与 Symfony2 和 FOSElasticaBundle 一起使用。然后我尝试查找仅包含 ASCII 字符的任何内容,它就像一个魅力。另外,我使用 JSON 数组存储数据,它将 unicode 字符转换为 \u00f8C 之类的东西。这会影响我的问题吗?我的搜索代码:

另外,ES 是否有能力看不出立陶宛字符之间的差异,例如“Š”和“S”、“Ė”和“E”等?我的意思是,我想通过“žąsis”和“zasis”等查询获得相同的结果。

0 投票
1 回答
796 浏览

symfony - FOSElasticaBundle 排序不起作用

我的 elastica 类型的配置如下所示:

我有扩展 FOS\ElasticaBundle\Repository 的 Repository 类,除了排序之外,一切都运行良好。

得到一些不相关的结果,完全没有顺序。然后,我尝试在索引中添加模型 id 并尝试按 id 排序但也没有成功。

0 投票
0 回答
208 浏览

php - ElasticSearch 在脚本分数上出错,以前可以正常工作

我有几种由 ElasticSearch 索引的实体类型(通过 FOSElasticaBundle 使用 Elastica)。它们都有一个“重要性”属性,它是一个存储的整数。

我一直在使用功能分数查询,它可以很好地根据结果的重要性对结果进行排序。

在 elastica 中,它看起来像这样:

这对我来说一直很好,直到我最近索引了一个新的实体类型。这种新的实体类型还有一个重要性属性,它也是一个存储的整数。现在,当我在新实体或旧实体(过去可以正常工作)上使用相同的函数分数查询时,我会遇到如下错误:

一些搜索会产生很多想法,认为参数在整个 ElasticSearch 中都是全局的,因此我可能在其他一些名为“importance”的实体上有一个参数,它在任何地方都不是整数……但事实并非如此。我在数据库中唯一的“重要性”参数都是相同的整数。

我试过 -XPOST ' http://localhost:9200/index/_optimize?max_num_segments=1 ' 但这似乎也没有改变。我什至尝试根据另一个堆栈溢出讨论,在我的一个实体类型上将“整数”值更改为“长整数”并重新索引该实体,但这也没有做任何事情。

有人有想法么?这几天我一直在拔头发。

0 投票
1 回答
2077 浏览

symfony - 将 elastica 与 PagerFanta 和动态查询构建器一起使用

我有一个带有 symfony2 / 学说 2 / elastica / fosElasticaBundle / pagerFanta 的应用程序。

我想将自定义和动态 queryBuilder 与 pagerfanta 和 elastica 结合使用。不是转换结果,而是预过滤它们。

到目前为止,我能够: 1. 将 pagerfanta 与我的自定义 queryBuilder 一起使用:

  1. 将 Elastica 与 Pagerfanta 一起使用,但没有我的自定义 QueryBuilder :

    /li>

现在,我怎样才能使用我的自定义 QueryBuilder ?我知道你可以在 elastica 配置中设置一个自定义的,但我的必须是动态的 = 带一个参数,所以我想在控制器中设置它。那可能吗 ?

0 投票
2 回答
551 浏览

symfony - FOSElasticaBundle:如何不索引离线文档?

我有一个“文档”的 MySQL 数据库,它被 ElasticSearch 与 Symfony2 的 FOSElasticaBundle 和控制台命令索引:

我不希望将列“在线”为 false 的文档编入索引。

我该怎么做才能配置这种需求?

0 投票
1 回答
320 浏览

symfony - ElasticSearch 突出显示结果重复片段

我正在使用 FOSElasticaBundle 使用以下配置索引 ES 文档:

我正在尝试使用 ES 的突出显示功能,这是一个请求示例:

给出结果:

原来的内容是Une jeune personne blonde se tenait en partie double, elle avait choisi.

我已经使用不同的分析器配置 + 重新索引文档进行了一些测试,但是我从来没有很好地突出所有片段:有时,突出显示一个,而不是其他,有时,没有,等等。

分析器和突出显示过程之间有什么问题?我的配置有什么问题?