記事概要
Ruby on Railsで、ヘルパーメソッドを作成する方法についてまとめる
前提
- Ruby on Railsでアプリケーションを作成している
手順
-
app/helpers
フォルダに、[ヘルパーメソッド名]_helper.rb
を手動作成するtweets_helper.rbmodule TweetsHelper end
-
app/helpers/[ヘルパーメソッド名]_helper.rb
に、メソッドを定義するtweets_helper.rbmodule TweetsHelper def tweet_lists(tweets) end end
- ビューファイルに記述している処理を切り出し、ヘルパーメソッドの処理として記述する
<!-- ビューファイルの記述 --> <div> <% @tweets.each do |tweet| %> <%= render partial: "tweet", locals: { tweet: tweet } %> <% end %> </div>
tweets_helper.rbmodule TweetsHelper def tweet_lists(tweets) html = '' tweets.each do |tweet| html += render(partial: 'tweet',locals: { tweet: tweet }) end return raw(html) end end
- ビューファイルで、定義したヘルパーメソッドを呼び出す
<div> <!-- tweets_helper.rbのtweet_listsメソッドを呼び出す --> <%= tweet_lists(@tweets) %> </div>
まとめ
raw
HTMLを正常に表示するために、「<」「>」「&」などの、特殊文字と呼ばれる文字を意図するように扱うためのメソッド
raw(文字列)
ビュー