回答編集履歴
1
補足を追加
answer
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
# 検索キーワードを<em></em>で囲む => 置換する
|
12
12
|
text.gsub!(keyword, '<em class="search">' + keyword + '</em>')
|
13
13
|
|
14
|
-
=> "<em>Ruby on Rails</em>(ルビーオンレイルズ)は、オープンソースのWebアプリケーションフレームワークである。RoRまたは単にRailsと呼ばれる。その名にも示されているようにRubyで書かれている。またModel View Controller(MVC)アーキテクチャに基づいて構築"
|
14
|
+
=> "<em class=\"search\">Ruby on Rails</em>(ルビーオンレイルズ)は、オープンソースのWebアプリケーションフレームワークである。RoRまたは単にRailsと呼ばれる。その 名にも示されているようにRubyで書かれている。またModel View Controller(MVC)アーキテクチャに基づいて構築"
|
15
15
|
```
|
16
16
|
|
17
17
|
* css
|
@@ -19,4 +19,25 @@
|
|
19
19
|
em.search {
|
20
20
|
任意のスタイルを定義
|
21
21
|
}
|
22
|
+
```
|
23
|
+
|
24
|
+
これを実際に使う場合は、ヘルパーにして使うと思います。
|
25
|
+
|
26
|
+
* app/helpers/application_helper.rb
|
27
|
+
```ruby
|
28
|
+
module ApplicationHelper
|
29
|
+
|
30
|
+
def decorate_keyword(text, keyword)
|
31
|
+
# 引数のtextを変化させないようにgsub!ではなく、gsubを使う
|
32
|
+
# HTMLタグがエスケープされないようにhtml_safeで返す
|
33
|
+
reuslt = text.gsub(keyword, '<em class="search">' + keyword + '</em>')
|
34
|
+
result.html_safe
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
```
|
39
|
+
|
40
|
+
* 検索結果のビュー?
|
41
|
+
```ruby
|
42
|
+
<%= decorate_keyword("検索結果として表示する文字列", "検索キーワード") %>
|
22
43
|
```
|