【问题标题】:Searchkick different reindex results when not reindex all records不重新索引所有记录时,Searchkick 不同的重新索引结果
【发布时间】:2017-12-28 18:05:45
【问题描述】:

我正在使用 searchkick。

Product.reindex

这将重新索引所有记录,如果我搜索它会起作用:

Product.search "*", load: false

Product.search "something", load: false

但仅出于开发目的,我只想例如 10 条记录。所以我这样做了:

Product.take(10).each do |p| p.reindex end

但它不会像我以前那样使用搜索方法。

我的问题是:

  • 如何仅重新索引视图记录?不是所有的记录。

【问题讨论】:

    标签: ruby-on-rails ruby elasticsearch searchkick


    【解决方案1】:

    默认情况下,searchkick 将自动索引所有新记录(在创建/更新/删除时)。因此,如果您只想索引 10 条记录,您可能必须:

    1. 禁用自动索引,在你的模型中使用这个:

      searchkick 回调:假

    2. 删除所有以前的索引:

      Product.clean_indices

    3. 索引你想要的 10 条记录:

      Product.take(10).each{|p| p.reindex}

    希望这有帮助,我没有测试它,只是红色了一点文档。

    【讨论】:

    • 我想念searchkick callbacks: false 将尝试发布结果。谢谢兄弟;)
    猜你喜欢
    • 2023-03-09
    • 1970-01-01
    • 2019-03-02
    • 2014-03-11
    • 1970-01-01
    • 2016-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多