问题标签 [elasticsearch-rails]
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 - 您可以将 copy_to 与 elasticsearch-rails 一起使用吗?
我正在尝试将collection_title
字段复制到title
使用copy_to
. 这没有任何作用:
我正在使用 elasticsearch gem 的集合:elasticsearch-rails、elasticsearch-model 和 elasticsearch-api。
ruby-on-rails - 为什么我们使用像 solr、elastic search 或任何其他搜索引擎这样的搜索引擎,而不是我们有像 ransack 这样的活跃记录宝石
为什么我们使用类似搜索引擎solr,elastic search
或任何其他搜索引擎,而不是我们有类似的active record
宝石等ransack,meta_search
。
我是搜索引擎选择的新手。
我知道索引行为和其他可用于搜索引擎。但想知道性能方面或大数据方面的搜索引擎有什么帮助。
我正在创建一个购物网站,但我很困惑我该怎么办?
任何帮助对我来说都是非凡的
ruby-on-rails-3 - 如何使用关联模型条件搜索 Elasticsearch-rails?
我正在尝试搜索属于特定项目的文档模型 has_and_belongs_to_many 项目。
模型/doc.rb 需要“弹性搜索/模型”
搜索方法如下
此搜索方法完成时没有错误,但没有返回任何内容。
我尝试使用 where([projects.id IN (?)], project_ids) 进行搜索,但它无法搜索属于具有最大大小的项目的文档。
如何通过与关联匹配进行搜索?
提前致谢。
elasticsearch-rails - 使用 elasticsearch-persistence ruby 的映射器附件类型的自定义映射
在我的项目中,我使用mapper-attachments插件将数据存储在活动记录模型中并在弹性搜索中索引 html 文档。我的文档映射如下所示:
我运行查询以仔细检查我的文档映射和结果:
它工作得很好(上面的类型:'附件')。我可以完美地通过 html doc 进行搜索。
我的 mysql 的 activerecord 存在性能问题,我真的不需要将它存储在数据库中,所以我决定迁移到存储在 elasticsearch 中。
我正在使用elasticsearch-persistence gem 进行实验。
我将映射配置如下:
但是当我对映射进行查询时,我得到了这样的结果:
这是错误的。谁能告诉我如何使用附件类型进行映射?
非常感谢您的帮助。
ruby-on-rails - 在 Elasticsearch-Model 的 `mapping do` 中使用类方法
我正在使用Elasticsearch-Model
. 我将所有与搜索相关的方法提取到一个ActiveSupport::Concern
. 以下代码是在使用 Tire gem 时编写的,但我将 gem 升级到 Elasticsearch-Rails 和 Elasticsearch-Model,因为 Tire 不支持 Elasticsearch 1.x。当前的实现如下所示:
但我收到了这个错误:
我尝试了很多东西,例如 usinddef included(base)
和 then base.eval
,但我无法进入class_eval
正确的范围。
有任何想法吗?
elasticsearch - 将 Elasticsearch 结果范围限定为特定 ID
我有一个关于 Elasticsearch DSL 的问题。
我想进行全文搜索,但将可搜索记录的范围限定为特定的数据库 ID 数组。
在 SQL 世界中,它将是WHERE id IN(1, 2, 3, 4)
.
我一直在研究,但我发现 Elasticsearch 查询 DSL 文档有点神秘,而且没有有用的示例。谁能指出我正确的方向?
ruby-on-rails - 升级到 Rails 4.2.5.1 后出现 VersionConflictEngineException
在将 Rails 更新到 4.2.5.1 并更新用户文档后,我不时收到此异常
Elasticsearch::Transport::Transport::Errors::Conflict: [409] {"error":"VersionConflictEngineException[[users][0] [user][1]: 版本冲突,当前 [7],提供 [6] ]","状态":409}
但是,我没有在更新请求中传递任何明确的版本。我想两个不同的进程正在尝试同时更新同一个文档,但是除了 Rails 版本之外它没有改变任何东西。
我正在使用elasticsearch-model(0.1.8)elasticsearch-rails(0.1.8)elasticsearch(1.0.15)elasticsearch-api(1.0.15)和elasticsearch-transport(1.0.15)
elasticsearch版本是Version: 1.2.2, Build: 9902f08/2014-07-09T12:02:32Z, JVM: 1.7.0_65
ruby-on-rails-4 - Elasticsearch 不使用“not_analyzed”索引
我无法弄清楚为什么 elasticsearch 不使用 not_analysed 索引进行搜索。我的模型中有以下设置,
而且我在 elasticsearch 的映射是正确的,如下所示。
但问题是,当我对未分析的字段(姓名和电子邮件,因为我希望它们不被分析)进行搜索时,它只搜索完整的单词。就像下面的示例一样,它应该返回 John、Johny 和 Tiger,所有 3 条记录。但它只返回 2 条记录。
我正在搜索如下
这就是我在回调中在我的用户对象上创建索引的方式after_save
,
一些应该匹配的文件
请有任何建议。
ruby - Ruby On Rails 中的弹性搜索从 0.90 升级到 2.x
在我当前的 Ruby on Rails 应用程序中实现了 elasticsearch,elasticsearch 的版本是0.90,我们使用了“轮胎”gem。
现在我想用最新版本的 elasticsearch("2.x") 更新它。
Tier gem 现在不支持 elasticsearch 版本 1.x/2.x,他们建议使用“elasticsearch-rails”gem,但是如何使用它来将我的应用程序从旧版本迁移到新版本。
ruby-on-rails - 更像这样的 elasticsearch-rails 和 mongoid 什么都不返回
我使用 MongoDB 来存储有关鞋子的信息。每只鞋都有一个标题(字符串),照片(字符串,这是照片的网址),链接(字符串,原始网站的网址),尺寸(字符串数组),颜色(字符串数组)和价格(字符串)和性别(字符串)。
在我的 project/app/models/shoe.rb 文件中,我有:
在 project/config/initializers/elasticsearch.rb 我有:
在 project/config/mongoid.yml 我有:
现在,在 Rails 控制台中,在运行 elasticsearch 的情况下,我调用Shoe.more_like_this(some_shoe_object).results.to_a
它并返回[]
. 首先,我的查询包括注释部分,但是当我没有得到任何结果时,我将其注释掉,尽管数据库中有更多与some_shoe_object
. 它不应该返回一些东西吗?我使用弹性搜索错了吗?我是初学者。请帮忙!