ベストプラクティスは、ActiveRecordでこれらの値の更新を処理させることです。
しかし、あなたはまだ、このような何かを明示的にそれを行うためにbefore_save
とbefore_create
にいくつかのコールバックを追加してみてください可能性があり、計算のいくつかの並べ替えを行う必要がある場合:
class User < ActiveRecord::Base
before_save :compute_updated_at
before_create :compute_created_at, :compute_updated_at
def created_at
read_attribute(:created_at)
end
def created_at=(value)
compute_created_at
end
def updated_at
read_attribute(:updated_at)
end
def updated_at=(value)
compute_updated_at
end
private
def compute_updated_at
write_attribute(:updated_at, Time.now + 1.month)
end
def compute_created_at
write_attribute(:created_at, Time.now + 2.month)
end
end