如何在视图中使用paper_trail格式化变更集的输出?

时间:2015-10-08 18:23:06

标签: ruby-on-rails ruby paper-trail-gem

# reports\workorder_version.html.haml
%table
%class='Work Orders'
  %tr
  %thead
    %tr
      %th Index
      %th Date
      %th User ID
      %th Event
      %th Item Type
      %th Item ID
      %th Change Set
      %th IP Address
    %tr

  %tbody
    - workorder = Workorder.where(:id => params[:id]).first
    - workorder.versions.reverse.each do |version|
      %tr
        %td= version.index
        %td= version.created_at.in_time_zone('Eastern Time (US & Canada)')
        %td= Employee.find(version.whodunnit.to_i).full_name.upcase
        %td= version.event.humanize
        %td= version.item_type.humanize
        %td= version.item_id
        %td= version.changeset.to_s.humanize
        %td= version.ip

我的输出:

Output of my report[1]

如何让输出更容易让最终用户阅读?

1 个答案:

答案 0 :(得分:2)

输出来自version.changeset, which returns a hash。您可以循环遍历散列以在单独的行上显示每个字段及其更改,如下所示:

%td
  -version.changeset.each do |field, value|
    = field + ": "
    = value
    %br
相关问题