我想保存任何数据库列的每个修改。例如,如果用户更新他/她的联系信息,那么我的应用程序应该更新值,但也保持保存以前的值。我该怎么做?有没有宝石?
答案 0 :(得分:1)
您可以使用PaperTrail gem执行此操作。您可以有选择地跟踪数据库表,还可以指定要排除的列。
在Github页面上有相当详细的文档,但基本上要设置它你所要做的就是(直接从文档中复制):
# Add PaperTrail to your Gemfile.
gem 'paper_trail', '~> 4.0.0'
# Add a versions table to your database.
bundle exec rails generate paper_trail:install
bundle exec rake db:migrate
# Add has_paper_trail to the models you want to track.
class Widget < ActiveRecord::Base
has_paper_trail
end