私はHamlを学んでいます。
私のビューファイルは次のようなものです:
show.html.haml:
.content
= render 'meeting_info', :locals => { :info => @info }
および_meeting_info.html.haml:
.detail
%table
%caption
Meeting Informations of
= info["meeting_name"]
...
これを実行しようとすると、undefined local variable or method 'info'
エラー。
これを試して:locals
および:partial
なし
.content
= render 'meeting_info', :info => @info
ローカルを指定する必要はありません。
:locals
および:partial
を使用
次の場合、つまりレンダリングに:partial
を指定する場合、ローカルを指定する必要があります
.content
= render :partial => 'meeting_info', :locals => { :info => @info }
コントローラーからレンダリングを呼び出す場合は、:locals
オプションを使用します。ビューからレンダーを呼び出すとき、これを行うだけです:
= render 'meeting_info', :info => @info