【问题标题】:Adding Time and Date to Paper_Trail data将时间和日期添加到 Paper_Trail 数据
【发布时间】:2015-05-26 04:51:31
【问题描述】:

刚接触 Rails,但学到了很多东西。

我正在使用 Paper Trail 来保存我的数据库版本,专注于我希望在每次更新时维护的一个总和。总和称为“xoi_qb”。

在我的模型中,我已经定义了要保存的数据,如下所示:

 def get_xoi_qb
    xoi_qb = []
    self.versions.each do |version|
      unless version.reify.nil?
        xoi_qb << version.reify.xoi_qb
      end
    end
    return xoi_qb
  end

在我想要显示此数据的 html 页面中,我有这个:

  <p>Previous XOI</p>
  <table summary="XOI Versions">
    <tr>
      <td><%= @quarterback.versions.map { |version| version.reify.xoi_qb} %></td>
    </tr>

这一切正常。

除了“Previous XOI”数据之外,我还想显示更新“xoi_qb”总和的时间和日期(我假设使用“updated_at”,但我尝试过的没有任何效果)。

非常感谢您的帮助。

(附带问题:我的“XOI”总和出现在网站上的括号中(即 [745])...如果您能告诉我如何摆脱它,那就太棒了。)

【问题讨论】:

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


    【解决方案1】:

    我相信版本的日期和时间存储在版本的created_at 字段中。你试过吗?

    关于您的附带问题:您基本上是在您的视图代码中执行[745].to_s,即将数组转换为字符串,它会执行您要求它执行的操作。您的代码看起来您​​的意图是输出所有以前的版本。为此,您宁愿迭代数组而不是将其转换为字符串。比如:

    <table>
      <% quarterback.versions.each do |version| %>
        <tr>
          <td><%= version.reify.xoi_qb %></td>
        </tr>
      <% end %>
    </table>
    

    ...还有日期:

    <table>
      <% quarterback.versions.each do |version| %>
        <tr>
          <td><%= version.reify.xoi_qb %> dated <%= version.created_at %></td>
        </tr>
      <% end %>
    </table>
    

    【讨论】:

    • 太棒了!这行得通。我唯一需要根据您添加的内容进行修改的是添加到“@quarterback”的“@”。非常感谢!!!
    • 很高兴为您提供帮助。用 Rails 玩得开心!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-17
    • 2015-09-21
    • 2019-10-07
    • 1970-01-01
    相关资源
    最近更新 更多