Рендеринг частичного с местными жителями в Haml? - PullRequest
32 голосов
/ 10 марта 2011

Я учу Хамла.

Мои файлы просмотра имеют вид:

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'.

Ответы [ 2 ]

74 голосов
/ 10 марта 2011

Попробуйте это
Без :locals и :partial

.content
  = render 'meeting_info', :info => @info

Не нужно указывать местных жителей.

С :localsи :partial
Вы должны указать localals в следующем случае, т.е. указать :partial для рендера

.content
  = render :partial => 'meeting_info', :locals => { :info => @info }
14 голосов
/ 10 марта 2011

Вы бы использовали опцию :locals, если вы вызываете рендер из контроллера.При вызове рендера из представления вы просто делаете это:

= render 'meeting_info', :info => @info
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...