我在Ransack
应用中使用gem
Rails
来获取搜索功能。我在搜索结果中突出显示搜索关键字参数:params[:search]
。我使用highlight
辅助方法
<%= highlight(@description.slice(0..50), params[:search]) %>
如果关键字出现在50
@description
字符之间,则此方法可以正常工作
但如果关键字出现在50个字符之后,如何通过限制字符数突出显示它。
我自己找到了解决方案,并将其作为答案添加。还有其他有效的解决方案吗?
答案 0 :(得分:0)
excerpt
辅助方法可用于提取与短语的第一个实例匹配的文本。
<%= highlight(excerpt(@description, params[:search], radius: 50), params[:search]) %>
有关TextHelper
的更多详情:http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html