helperメソッドを使ってみる

Helperとは?

viewをDRYに記述することができるモジュールです。Helperを利用することでviewファイルの可読性が向上します。
helperはlink_toform_tagなどのメソッドをデフォルトで用意してくれていますが、独自に作成することも可能です。

helperメソッドを定義してみる

今回は例として、questionsテーブルのis_resolutionカラムがtrueであれば解決、falseであれば未解決と表示する、helperメソッドを定義します。

# view側で`resolution_text`という、helperメソッドを呼び出します。
<%= resolution_text(@question) %>
module QuestionsHelper
  def resolution_text(question)
    if question.is_resolution?
      '解決' 
    else
      '未解決'
    end
  end
end

このようにhelperメソッドに処理を切り出すことで、viewをDRYに記述することができます。