我有一个搜索方法,可以返回搜索项位于项目名称或项目标签之一中的项目。这是方法:
def self.search(search)
search.blank? ? [] : list = all(:conditions => ['name LIKE ?', "%#{search.strip}%"])
list_two = Illustration.tagged_with('%#{search.strip}%', :any => true)
ary = list + list_two
return ary.uniq
end
我也试过了list & list_two
的一些变种而没有运气。
返回的列表有重复项。例如,我有2个项目,一个名为'Test',另一个名为'Test 5'。 “测试5”有一个标签'test'。当我搜索“test”时,生成的数组为['Test', 'Test', 'Test 5']
有人看到这里可能出现的问题吗?感谢。
答案 0 :(得分:1)
尝试以下方法:
a = ['Test', 'Test', 'Test 5']
p a.uniq!{|i| i.split(" ").first}
# >> ["Test"]