如何将haml代码提取到帮助器中

时间:2014-11-21 10:21:38

标签: ruby-on-rails haml

如果我想将以下代码移动到帮助程序

      %td.center= log.streaming_verification_id
      %td.center= log.id

并通过调用call_the_helper

进行渲染

如何编写方法call_the_helper以满足我的要求

进入帮手

  - @tool_cvt_streaming_verification_logs.each do |log|
    %tr
      = call_the_helper

2 个答案:

答案 0 :(得分:1)

def call_the_helper中添加类似内容:

haml_tag :td, :class => 'center' do
  log.streaming_verification_id
end
haml_tag :td, :class => 'center' do
  log.id
end

答案 1 :(得分:1)

只需将代码移动到其他视图(部分)中,然后从帮助程序或其他视图中呈现它。

视图:

- @tool_cvt_streaming_verification_logs.each do |log|
  %tr
    = call_the_helper(log)

助手:

def call_the_helper(log)
    render partial: 'partial_view', locals: { :log => log }
end

局部视图:

%td.center= log.streaming_verification_id
%td.center= log.id