Open
Description
Say I have a model with numeric_order option:
class Category < ApplicationRecord
has_closure_tree order: "position", numeric_order: true
end
With this setting we lose dirty tracking after setting the parent:
category.update! parent: parent_category, name: "Foo"
category.saved_change_to_name? # => false
All dirty tracking is lost since it ends up calling reload
internally.
Perhaps this code could just reload the order attribute instead of the entire record? This way dirty tracking would persist.
Activity
ryanb commentedon Jan 24, 2023
For the record, I'm currently monkey-patching to work around this issue. Feel free to use this in the implementation.