问题标签 [thinking-sphinx]

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 回答
1993 浏览

ruby-on-rails - 思考狮身人面像不在测试模式下工作

我正在尝试让 Thinking Sphinx 在 Rails 中以测试模式工作。基本上是这样的:

冻结,永远不会回来。

我的测试和开发配置对于测试和开发是相同的:

和 sphinx.yml

生成的配置文件 config/development.sphinx.conf 和 config/test.sphinx.conf 仅在数据库名称、目录和类似内容上有所不同;没有任何功能。

为开发生成索引没有问题

但是当我尝试进行测试时,它会冻结:

已经存在10多分钟了,user表有4条记录。

数据库目录看起来很不一样,但我不知道该怎么做:

发生这种情况时,不会将任何内容添加到日志中。有什么想法可以从这里开始吗?

我可以手动运行命令行:

它将输出生成为 rake ts:in,所以没有帮助。

0 投票
1 回答
426 浏览

ruby-on-rails - 使用 thinking_sphinx 插件对 Rails 的搜索结果进行分组

我可以使用以下内容对结果进行分组,但每组只返回一个结果。

所以,如果我按天显示结果,我每天只能得到一个结果。

我是否必须手动解析 @results 数组并按日期对它们进行分组,还是我遗漏了什么?这是 sphinx 文档中的一行:http: //sphinxsearch.com/docs/current.html#clustering

“然后,最终的搜索结果集包含每组一个最佳匹配项。”

0 投票
1 回答
211 浏览

ruby-on-rails - 在 ROR 项目中通过 Thinking Sphinx 搜索法语

如何使用 sphinx 搜索数据库中的条目实际上是英文的法语单词?

情况是:

我有一个 ROR 项目,在数据库中有一个名为“类别”的表,类别名称是英文,类别有很多“问题”条目。

在本地化文件 config/locals/fr.yml 中,这些类别被翻译成法语。

考虑可扩展性,我们不能将数据库中的类别名称更改为法语。

用户可以按关键字的类型部分进行搜索。

这是一个示例: 类别名称:健康和医疗 法语:Santé et médecine

那么我该怎么做:在搜索字段中输入“Santé médecine abc”,然后 sphinx 将返回“健康和医疗”类别下的“问题”并有关键字“abc”?

0 投票
2 回答
1779 浏览

ruby-on-rails - 我是否正确地重新索引了这个 Sphinx 索引?

根据Thinking Sphinx 文档...

打开增量索引并不会消除定期运行完整重新索引的需要......

所以我设置了这个cron作业......

这是一个合理的方法吗?我应该做一些不同的事情吗?

0 投票
1 回答
9914 浏览

ruby-on-rails - Rails 对现有的 ActiveRecord 结果数组进行分页

我通常在我的应用程序中使用 will_paginate 进行分页,但在我的搜索功能上遇到了障碍。我正在使用 Thinking Sphinx 进行全文搜索,它返回分页的结果。我遇到的问题是,在收到 Thinking Sphinx 的结果后,我需要将它们与其他一些结果合并并重新排序。

处理完它们后,我得到的结果数组与 TS 的原始结果非常不同。因为在这个数组分页中可能有 1000 多个结果,所以分页是必要的。问题是我不知道如何让 will_paginate 使用现有数组。

我做了一些研究,似乎这个问题的唯一解决方案来自几年前,并且基于旧的内置 Paginator 类。我能找到的使用 will_paginate 的最新版本来自 2007 年中期的 devchix:http: //www.devchix.com/2007/07/23/will_paginate-array/comment-page-1/ - 我已经试一试,但它似乎对我没有任何作用。

是否有任何当前的方法可以为现有的 AR 结果数组应用分页(最好通过 will_paginate)?

0 投票
1 回答
689 浏览

ruby-on-rails - Thinking Sphinx with Rails - Delta 索引似乎适用于一种模型,但不适用于另一种模型

我有 2 个模型用户和讨论。我定义了模型的索引如下:
对于用户模型:

对于讨论模型:

根据文档,我已在两个表中添加了一个增量列。我的问题是增量索引仅适用于 Discussion 模型而不适用于 User 模型。例如:当我更新讨论的“标题”时,我可以看到思考的狮身人面像正在旋转索引等(从日志中可以明显看出)。但是当我更新用户的 'first_name' 或 'last_name' 时,什么也没有发生。

User 模型还有一个 has_many :through 关联,通过一个名为 GroupsUser 的模型。我在 GroupsUser 上设置了 after_save,如下所示:

即使这似乎也不会触发用户模型上的增量索引。讨论模型的类似设置完美运行!谁能告诉我为什么会这样?

0 投票
2 回答
751 浏览

ruby-on-rails - 让 Sphinx 安静(非冗长)

我在 Ruby on Rails 项目中通过 Thinking Sphinx 使用 Sphinx。当我一直创建种子数据时,它非常冗长,打印以下内容:

对于每条创建的记录。有没有办法抑制该输出?

0 投票
1 回答
703 浏览

ruby-on-rails - Thinking-sphinx 和相关性或相似性得分

有人知道在一般使用 sphinx 或 think-sphinx 作为包装器时是否有办法获得查询和结果之间的原始相关性或相似性分数?任何帮助是极大的赞赏。

0 投票
3 回答
1040 浏览

ruby-on-rails - 带有 Thinking Sphinx 的动态字段

我正在构建一个包含产品和类别的应用程序。类别 has_many 属性,每个属性都有一个可能值列表。将类别设置为产品后,所有属性都会显示在表单中,用户可以将该属性设置为属性可能值之一。

我的问题是:

Thinking Sphinx 是否可以通过属性和属性值过滤产品,例如:

如果可能,实现这一点的最佳方法是什么?如果没有,还有其他图书馆可以解决这个问题吗?

谢谢

/ 奥拉

0 投票
2 回答
838 浏览

ruby-on-rails - Thinking Sphinx - 进行更改时按字符串属性排序会不同步

我有一个带有“名称”列的“餐厅”表。我定义了以下索引:

...因为我想对餐厅名称进行排序而不考虑前缀“The”。

我的问题是,每当这些记录之一被更新(以任何方式)时,新记录都会跳到排序顺序的顶部。如果另一个记录被更新,它也会跳到其他记录之前。我最终得到了两个列表:自上次重新索引以来已更新的餐厅列表和尚未更新的餐厅列表。每个相应的列表都按字母顺序排列,但我不明白为什么整个列表会以这种方式被隔离。我确实设置了延迟增量索引,我认为问题与此有关。