そもそもhelperとは?
⇨Viewをよりシンプルに書くためのモジュール(部品を集めたようなもの)要はviewファイル内で使えるメソッド.
helperの例(form_tagやlink_toなどがある)
<%= form_with url: "パス" do |form| %> <!--フォーム内容 --> <% end %>
どこにhelperメソッドを定義する?
⇨app/helpers配下にファイル作成しその中に記述する.
もしapplication_helper.rbにメソッドを定義した場合.
⇨どこからでも呼び出すことができます.
コントローラ名_helper.rb は、対象のコントローラの経由の処理でのみ使う場合に使用します.
⇨index_helper.rbを作成するとindex.html.erbファイルでhelperが使用できる.
modelファイルにメソッドを書く場合
モデルはそのモデルの概念やデータ構造から責務となるメソッドだけを持つべきです
それ以外はコントローラーに private で定義する.
例
もしお客さんが注文した商品の価格の合計を計算するメソッドを以下のように作ったとき
def total_amount food.price * count end
これは注文金額を保存しているモデルファイルの中に記述した方が良い