りゅうじの学習blog

学習したことをアウトプットしていきます。

helper_methodについて

コントローラで認可の設定での authorize(current_site)

ビューで

if current_site.main_images.present?

このように使っていたcurrent_sitehelper_method として宣言しているからビューでも使えるようになっています。

定義の仕方

def current_site
  @current_site ||= Site.first
end
helper_method :current_site

||演算子は、左から順に評価し、一番最初に真になったものを返す。

つまり

||= は左辺が存在しない(偽)の場合、右辺の値が代入される。

@current_site が存在しない場合 Site.first にが代入されるという事ですね。

これをhelper_method にすることで使い回せているわけです。

最後に

読んでいただいた方、ありがとうございました。