ruby或rails中是否有粗体文本的匹配函数?

时间:2012-04-25 19:04:01

标签: ruby-on-rails ruby

即时创建标签系统,当用户输入时,我希望结果在与用户输入的字符匹配的位置加粗

我的标签在哪里呈现在这里......

@tags = Tag.order(:name).where("name like ?", "%#{params[:term]}%")
render json: @tags.map{ |tag| {:label => "#{tag.name} x #{tag.count}", :value => tag.name} }

用户输入的内容可以从params [:term]中获取。是否有一个匹配函数,可以在用户输入时加粗相应的字符?

感谢

1 个答案:

答案 0 :(得分:4)

控制器不是使用响应主体进行操作的最佳位置。但是,你可以这样做:

  1. include ActionView::Helpers::TextHelper放入控制器类。
  2. 在您的操作中使用highlight帮助程序。
  3. 喜欢这里:

    s = highlight('Ruby on Rails', 'rails', :highlighter => '<strong>\1</strong>')
    # => "Ruby on <strong>Rails</strong>"