Rails ActiveStorage版本控制(与paper_trail或类似的东西)



我有一个User模型,它有一个图像。

class User < ApplicationRecord
has_paper_trail
has_one_attached :image
end

我决定paper_trail gem,因为我需要用户属性的版本控制。但是,我注意到我不知道如何获取图像的版本控制信息。

PaperTrail::Version.where(item_type: "User").first.object
=> "---nemail:XXXXn'ncreated_at: 2021-10-28 13:06:15.206202000nupdated_at: 2021-10-28 13:06:19.789124000n"

还有人知道如何获得以前版本的ActiveStorage吗?我正在使用paper_trail gem,所以如果paper_trail可以做到这一点,这是最好的。

好吧,我有点晚了,但我发现需要在我的ActiveStorage模型上进行版本跟踪。以下是对我有用的方法:

  1. /config/initializers创建一个名为active_storage.rb
  2. 的新文件
  3. 在新建的/config/initializers/active_storage.rb文件中添加如下代码:
Rails.application.config.to_prepare do
ActiveStorage::Record.has_paper_trail
end
  1. 重启你的Rails服务器

您现在应该看到ActiveStorage::Record的所有子类的版本跟踪。

最新更新