0

我有一个搜索方法,它返回搜索词在项目名称或项目标签之一中的项目。这是那个方法:

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 5']

有人看到这里可能是什么问题吗?谢谢。

4

1 回答 1

1

试试下面的:

a = ['Test', 'Test', 'Test 5']
p a.uniq!{|i| i.split(" ").first}
# >> ["Test"]
于 2013-06-01T15:58:36.473 回答