ryota21silvaの技術ブログ

Funna(ふんな)の技術ブログ

これまで学んだ技術の備忘録。未来の自分が救われることを信じて

local_assignメソッドって?

local_assignメソッドとは?

ローカル変数を特定の状況に限ってパーシャルに渡したい時に使う。

用途
  1. renderした部分テンプレート内で使える変数を明示したい(明示したいだけで、使わなくてもいけそう)
  2. 変数が見つからない時に|| 値とセットしたりできる。
    local_assigns[:width] || 853はwidthというローカル変数が見つからない時に、853という値を代入してくれる。
(app/views/admin/articles/article_blocks/_show_embed.html.slim)
.box-body
  - if embed.identifier?
    - if embed.youtube?
      = render 'shared/embed_youtube', embed: embed, width: 560, height: 315
    - if embed.twitter?
      = render 'shared/embed_twitter', embed: embed
(app/views/shared/_embed_youtube.html.slim)
ruby:
  embed = local_assigns[:embed]
  width = local_assigns[:width] || 853
  height = local_assigns[:height] || 480