3

paper_trail での注意事項の 1 つは、関連付けの最初のレベルのみが回復されることです。これは、関連付け内に関連付けがある場合に問題になります。

私が持っている場合...

class Student < ActiveRecord::Base
  has_paper_trail
  has_many :attendances, dependent: :destroy
end

class Attendances < ActiveRecord::Base
  has_paper_trail
  has_many :point_logs, dependent: :destroy
end

class PointLogs < ActiveRecord::Base
  has_paper_trail
end

生徒を削除した場合student.versions.last.reify(:has_many => true)、削除された出席と生徒を回復し、次にpointlog.version.last.reify削除されたポイントログを個別に回復します

これはネストされたカスケード削除を回復するための最良の方法ですか、それとも paper_trail 内でこの警告に対処するためのより良い方法はありますか?

4

1 に答える 1