elasticsearch - 使用 Tire 在 ElasticSearch 中删除/删除索引文档(通过 ActsAsParanoid 进行软删除)

标签 elasticsearch tire

我有一个 ElasticSearch 服务器正在运行,该服务器使用优秀的 Tire gem 索引和搜索文档。一切都很好,除了我不确定如何从搜索索引中手动删除文档。

我已经翻阅了 RDoc 并搜索了几个小时,但这是我能找到的解决方案的唯一提示 https://github.com/karmi/tire/issues/309 .除了围绕 curl 构建自定义包装器并手动发出请求之外,还有更简单的方法吗?

另一个障碍是我使用了一个名为 ActsAsParanoid 的软删除 gem,因此 Tire::Model::Callbacks 不会在软删除时删除对象。

有什么想法吗?

最佳答案

如果您只有 ID(例如 12345):

User.tire.index.remove 'user', '12345'

或者更一般地说:

klass.tire.index.remove klass.document_type, record_id

(我认为这等同于 remove @user 将在幕后执行的操作)

reference

关于elasticsearch - 使用 Tire 在 ElasticSearch 中删除/删除索引文档(通过 ActsAsParanoid 进行软删除),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12802273/

相关文章:

elasticsearch - ElasticSearch-在查询结果上限制嵌套集合的大小

elasticsearch - Elasticsearch :通过标签相似度获取相关内容

ruby-on-rails - 如何在 elasticsearch 的同一字段上使用多个查询进行搜索?

ruby - 轮胎搜索返回项的首字母

elasticsearch - 按标志过滤文档的最快方法是什么?

ruby-on-rails - Searchkick Elasticsearch ,条件类似于行为

ruby - 映射ElasticSearch GeoPoint字段

ruby-on-rails - Elasticsearch术语过滤器速度慢

ruby-on-rails-3 - 将SQL与 Elasticsearch 结合使用

ruby - Elasticsearch 轮胎 : How to bulk remove?