Ruby on rails 使用HAML在Rails3中嵌套渲染部分

Ruby on rails 使用HAML在Rails3中嵌套渲染部分,ruby-on-rails,haml,Ruby On Rails,Haml,我正在尝试以下几点 一个具有 #whitepanelMID #groups_view_scroller = render 'show' do = render 'short_field', locals: {label: 'Name:', value: @group.name} = render 'short_field', locals: {label: 'Description:', value: @group.description} 部分是_show

我正在尝试以下几点

一个具有

#whitepanelMID
  #groups_view_scroller
    = render 'show' do
      = render 'short_field', locals: {label: 'Name:', value: @group.name}
      = render 'short_field', locals: {label: 'Description:', value: @group.description}
部分是_show.html.haml,注意yield的用法

和_short_field.html.haml

%tr
  %th.vert_table_heads= label
  %td= value
问题是收益率似乎不起作用

在HAML中渲染时使用块的正确方法是什么

更新

我找到了一个我不喜欢的解决办法

在HAML模板中,捕获如下输出

#whitepanelMID
  #groups_view_scroller
    - rows = capture_haml do
      = render partial: 'short_field', locals: {field_label: 'Name:', value: @group.name}
      = render partial: 'short_field', locals: {field_label: 'Site:', value: @group.site.description}
    = render partial: 'show', locals:{ content: rows}
    %br/
使用修改的partial _show.html.haml,使用内容变量代替yield


很高兴听到更好的方法

仅仅因为@vidaca提供的链接是ERB,我想为HAML发布一个等价的链接

使用布局:使用包装器模板时

#whitepanelMID
  #groups_view_scroller
    = render layout: 'show', locals:{ table_title: 'My table'}
      = render partial: 'short_field', locals: {field_label: 'Name:', value: @group.name}
      = render partial: 'short_field', locals: {field_label: 'Site:', value: @group.site.desccription }        
    %br/
和_show.html.haml类似的部分包装器

%table#vert_table.no_borders{ cellpadding: '0', cellspacing: '0'}
  %tbody
    %tr
      %td{ cols: 2 }= table_title
    = yield
在本例中,包装的partials short_字段按原样工作


希望帮助某人。

仅仅因为@vidaca提供的链接是ERB,我想为HAML发布一个等价的链接

使用布局:使用包装器模板时

#whitepanelMID
  #groups_view_scroller
    = render layout: 'show', locals:{ table_title: 'My table'}
      = render partial: 'short_field', locals: {field_label: 'Name:', value: @group.name}
      = render partial: 'short_field', locals: {field_label: 'Site:', value: @group.site.desccription }        
    %br/
和_show.html.haml类似的部分包装器

%table#vert_table.no_borders{ cellpadding: '0', cellspacing: '0'}
  %tbody
    %tr
      %td{ cols: 2 }= table_title
    = yield
在本例中,包装的partials short_字段按原样工作


希望对某人有所帮助。

你可以试着看看这个,谢谢@vidaica,我用过=渲染布局:。。这就是诀窍!你可以试着看看这个谢谢@vidaica,我用了=渲染布局:。。这就是诀窍!