Rails - 检查记录是否已更新

时间:2016-11-22 00:12:33

标签: ruby-on-rails ruby

我正在尝试检查记录是否已更新/编辑,如果有,则应显示已编辑的记录。

这是我的if语句:

<% if comment.changed? %>
    <p id="comment-name"><%= comment.user.name %>(edited)</p>
<% else %>
    <p id="comment-name"><%= comment.user.name %></p>
<% end %>

虽然它不起作用。更新评论后,不会显示(edited)文本。我需要在if语句中添加什么来检查评论记录是否已更新?

1 个答案:

答案 0 :(得分:3)

我认为#changed?正在做你认为正在做的事情。

  如果任何属性有未保存的更改,则

#changed?返回true,false   否则。

Reference

如果记录的updated_atcreated_at不同,则会对其进行编辑(updated_at应大于created_at,以便更准确)。

<% if comment.updated_at != comment.created_at %>
    <p id="comment-name"><%= comment.user.name %>(edited)</p>
<% else %>
    <p id="comment-name"><%= comment.user.name %></p>
<% end %>