好吧,我碰到了某种bug或者#34;功能"也许。当我尝试在项目中添加突出显示搜索查询功能时。当页面上没有搜索查询时,突出显示认为params[:query]
是一个空字符串,因此发生这种情况:
2.1.1 :002 > query = ""
=> ""
2.1.1 :003 > helper.highlight('Some String', [query])
=> "<mark></mark>s<mark></mark>o<mark></mark>m<mark></mark>e<mark></mark> <mark></mark>s<mark></mark>t<mark></mark>r<mark></mark>i<mark></mark>n<mark></mark>g<mark></mark>"
有没有办法不突出显示if query is empty
?
答案 0 :(得分:1)
highlight
参数(数组)为空, phrases
将返回原始文本。你可以这样称呼它:
helper.highlight('Some String', [query].select(&:present?))
如果query
为空,phrases
也将为空。