问题标签 [searchkick]
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.
ruby-on-rails - Rails elasticsearch _geo_distance 和自定义评分/排序
因此,我的 Rails 应用程序使用 elasticsearch(带有 searchkick),使用 _geo_distance 排序功能工作得很好,但是我需要做一个更复杂的排序,包括位置和尝试促进企业名称完全匹配的字符串匹配。
例如,如果我进行查询并且有 10 个升序距离返回结果,但 #5 结果也是记录中商家名称的精确字符串匹配,我想将其提升/提升到 #1 位置(基本上覆盖了该记录的距离排序)。
我可以看到两种方法来尝试解决这个问题,但我都遇到了问题。
首先,将在初始查询上执行此操作,以便弹性搜索处理工作。
其次,将对弹性搜索返回的结果进行某种类型的后处理重新排序,以查找完全匹配并在需要时重新排序。
第一种方法的问题是,在调用 _geo_distance 时,内置评分机制似乎完全转移到距离,让我想知道如何将自定义评分函数与位置混合。
第二种方法的问题是返回的搜索结果是自定义类型的 SearchKick 对象,它似乎不像后处理的普通数组或哈希排序机制。
有没有办法在查询前或查询后以这种方式在结果中提升文档?
谢谢。
ruby-on-rails - ElasticSearch rails:按对象的关联数据排序结果
我已经在 Rails 应用程序中实现了 Searchkick,它运行良好。我想根据关联对象的数量对结果进行排序。例如。如果我按用户名搜索用户,那么我想按关注者数量对结果进行排序。(拥有最多关注者的用户应该排在第一位)
提前感谢您的帮助
ruby-on-rails-4 - 使用 Elasticsearch/Searchkick 进行搜索/自动完成以前可以工作,但现在已损坏
acts_as_taggable_on
我有一个 Rails 4.0.2 应用程序,它在标签对象上运行搜索/自动完成。我已经完成了必要的代码注入以使这些标签可搜索,并且搜索工作了一段时间。最近我一直在琢磨一些服务器配置,现在这个搜索不再适用于生产。它仍然可以在开发中使用,实际上它也可以在生产控制台中使用。
不能解决问题,也不能通过 rake via
当我尝试访问自动完成的 HTTP 请求时,我收到状态 500 内部服务器错误。错误日志读取
我已经尝试了所有我知道该怎么做,包括重新启动elasticsearch、重新索引、重新索引所有、删除索引和重新索引,但似乎没有任何效果,现在我不知所措。我是否遗漏了一些明显的东西,或者有人看到有什么问题吗?最大的谜团是直到最近这一切都用于生产,而且我没有更改任何代码!
编辑:如果有帮助,我也在为我的User
记录进行搜索/自动完成,但这些在生产中仍然可以正常工作......
ruby-on-rails - Faraday::TimeoutError","操作在几秒钟后超时.." Searchkick 同时重新索引相关记录
我正在尝试重新索引我的 searchkick 模型,看起来像这样
这是我的类别模型
Category_collectible 模型
地理结果模型
我在可收藏的 georesult 表中有大约 120k 条记录,在 category_collectibles 中有大约 300k 条记录,在类别中有 500 条记录,在重新索引时我检查了我的系统内存使用情况并且正常但不知道为什么我会收到超时错误
ruby-on-rails - searchkick/elasticsearch 使用多个属性设置自动完成
我已经使用 searchkick gem 设置了我的应用程序,并且正在为我的 Presenters 索引开发自动完成功能。我的问题是我正在搜索多个字段(名字和姓氏),虽然我可以通过这两个字段搜索演示者 - 例如,如果我有演示者“Jennifer Hall”,我可以输入“Jennifer”或“Hall” ' 并且名称 'Jennifer Hall' 将出现在自动完成下拉列表中,但如果我输入 'Jennifer' (一旦我添加了空格),名称就会消失并且没有更多建议。我的问题是我该如何解决这个问题?
我的代码
我已遵循本教程: 使用 Elasticsearch 向 Rails 应用程序添加搜索和自动完成功能
演示者.rb:
presenters_controller.rb:
我得到了 .map{ |presenter| 等 } 从这里的想法:
我如何使用 searchkick gem 映射 Rails 中的多个属性
但是,当我完全遵循解决方案时,我在建议名称的下拉列表中只得到了“未定义”。将其更改为presenter.first_name + " " + presenter.last_name 使其全名出现在下拉列表中。
路线.rb:
index.html.haml:
我正在使用 typeahead.js,所以它适用于:
应用程序.html.haml:
和
presenter.js.coffee:
所以,再一次,我的问题是,如果我输入名字,所有匹配该名字的选项都会出现在下拉列表中(名字和姓氏),但只要我输入空格,整个建议列表消失了。我无法搜索任何名字和姓氏“Jennifer H”。我可以猜测问题出在控制器/自动完成操作中的映射,但输入:
或者
产生错误,并且
使下拉列表中的所有建议都变为“未定义”。
关于如何解决这个问题的任何建议?
ruby-on-rails - Rails Elasticsearch + Searchkick
我在集成 searchkick 和 elasticsearch 时遇到问题。这是我现在所拥有的:
这是我的模型
但是当我去 rails 控制台并尝试搜索时,它只会给我一个结果:
我不知道为什么它只产生一个结果,实际上它应该产生三个。我安装并确保 elasticsearch 正在运行。
有什么我错过的吗?
TIA
ruby-on-rails - 如何在我的 Nitrous.io 盒子上设置 ElasticSearch 和 Searchkick?
我已将 searchkick gem 添加到我的 GEMFILE 中,并且还安装了带有 Autoparts 的 ElasticSearch 1.0。当我尝试重新索引我的一个模型时,我仍然收到连接被拒绝的消息。我认为这可能是因为我的弹性搜索服务器尚未启动。我不确定如何在 Nitrous.io 上启动它。下面是我试图运行的命令和我收到的错误消息......
命令
结果
ruby-on-rails - 没有词干的 Searchkick
我正在使用 searchkick ( https://github.com/ankane/searchkick ) 作为数组索引我的一些数据,它几乎可以正常工作:)
我感兴趣的领域是authors。我想要完成的是搜索“Marias”并找到所有实际上在他们的姓氏中具有确切字符串的作者,例如(Javier Marias),而不是 Searchkick 返回的所有 Maria/Mario/Marais,并将它们与一个更大的优先事项。
这就是我现在搜索的方式
这可能吗?TIA
ruby-on-rails - Searchkick 上的搜索统计信息
我有一个关于 rais 的 searchkick 项目,我试图找出是否有办法让人们在我的网站上搜索最多的内容。
searchkick 和 elasticsearch 可以做到这一点吗?