gpt4 book ai didi

ruby-on-rails - 多个elasticsearch过滤器

转载 作者:行者123 更新时间:2023-12-03 00:28:45 25 4
gpt4 key购买 nike

我正在使用Tire for rails集成elasticsearch。这有点令人困惑,我想确保自己做得对。

这是我应用多个过滤器的方式吗?我基本上是想检查'mixtape_id IS NULL AND artist_id IS NOT NULL'

  def self.search(query)
tire.search() do
query { string query }
filter :exists, { field: 'artist_id' }
filter :not, { exists: { field: 'mixtape_id' } }
end
end

这是我的第二次尝试,仍然没有用
  def self.search(query)
tire.search(load: true) do
query { string query }
filter :and, [
{ exists: { field: 'artist_id' } },
{ not: { exists: { field: 'mixtape_id' } } }
]
end
end

谢谢

最佳答案

我大部分时间都在正常工作,但我很遗憾地忘记每次都不得不强制重新编制索引。这是一些利用missing过滤器的清理代码。

  def self.search(query)
tire.search load: { include: { artist: :attachments } } do
query { string query }
filter :and, [
{ exists: { field: 'artist_id' } },
{ missing: { field: 'mixtape_id' } }
]
end
end

关于ruby-on-rails - 多个elasticsearch过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19913038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com