gpt4 book ai didi

ruby-on-rails - 查找多个单词的搜索功能

转载 作者:数据小太阳 更新时间:2023-10-29 09:03:28 25 4
gpt4 key购买 nike

我在搜索多个词的搜索表单时遇到问题。

我的模型中有这个功能。首先,我在 KeyWords 表中搜索我需要搜索图书馆表的外国 ID。

当我在我的 KeyWords 表中搜索一个词时,这工作正常,但我不知道如何搜索多个词,因为每个词都会返回一组 id。我不知道如何将它们折叠在一起以在库中搜索。

这是我的图书馆模型中的搜索功能:

def self.search(search)
if search
where("id in (?)", KeyWords.where("word like ?", "%#{search}%").pluck(:library_id))
else
all
end
end

我尝试做的是拆分搜索参数,然后针对其中的每个词搜索 key_words:

#       array = Array.new
# key_words = search.to_s.split(" ")
# key_words.count.times do |i|
# ids[i] = PalabrasClave.where("palabra like ?", "%#{key_words[i]}%").pluck(:daw_mate_acad_id)
# end
# where("id in (?)", ids.flatten.uniq)

但这不起作用。我以为搜索给了我一个 ID 数组,稍后我可以将它们与 join 方法一起折叠,但遗憾的是这不起作用。有什么想法吗?

最佳答案

当我应该初始化 ids = Array.new 时,我调用了 array = Array.new:

ids = Array.new
key_words = search.to_s.split(" ")
key_words.count.times do |i|
ids[i] = PalabrasClave.where("palabra like ?", "%#{key_words[i]}%").pluck(:daw_mate_acad_id)
end
where("id in (?)", ids.flatten.uniq)

关于ruby-on-rails - 查找多个单词的搜索功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29659296/

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