helper中的capture_haml不显示参数值

时间:2012-11-01 07:06:18

标签: ruby-on-rails haml helper

我正在尝试在rails视图中使用帮助器绘制一些haml行,事实是它正在编写html标记,但没有内容。

这是我的帮手:

def detail_line(model, column, value)
  capture_haml do  
    haml_tag :div, class: 'control-group' do
      haml_tag :label, {class: 'control-label'},"#{model.class.human_attribute_name column}"
      haml_tag :div, class: 'controls' do
        haml_tag :div, {class: 'value'}, "#{value}"
      end
    end
  end
end

这就是我使用它的方式:

= detail_line(@order, 'number', @order.number)

输出如下:

<div class="control-group">
  <label class="control-label"></label>
  <div class="controls">
     <div class="value"></div>
  </div>
</div>

我错过了什么或做错了什么? 非常感谢你提前!

1 个答案:

答案 0 :(得分:4)

def detail_line(model, column, value)
  capture_haml do
    haml_tag :div, class: 'control-group' do
      haml_tag :label,"#{model.class.human_attribute_name column}", {class: 'control-label'}
      haml_tag :div, class: 'controls' do
        haml_tag :div, "#{value}", {class: 'value'}
      end
    end
  end
end