Skip to content

Conversation

@seanpdoyle
Copy link
Contributor

@seanpdoyle seanpdoyle commented Dec 1, 2025

Depends on #465

Related to #308
Supports #103
Supports #169

Introduce the ActiveResource::Dirty module to extend the ActiveModel::Dirty module with a variety of internal overrides.

Like Active Record, Active Resource has two mechanisms to affect dirty state:

  • persistence (via #save and #update)
  • reloading (via #reload)

Custom methods and other instances of direct interaction with the underlying HTTP connection will require ad hoc invocations of ActiveModel::Dirty methods like *_will_change! and clear_changes_information.

Currently, only attributes declared by a resource's schema are dirty-tracked.

Introduce the `ActiveResource::Dirty` module to extend the
[ActiveModel::Dirty][] module with a variety of internal overrides.

Like Active Record, Active Resource has two mechanisms to affect dirty
state:

* persistence (via `#save` and `#update`)
* reloading (via `#reload`)

Custom methods and other instances of direct interaction with the
underlying HTTP connection will require ad hoc invocations of
[ActiveModel::Dirty][] methods like `*_will_change!` and
`clear_changes_information`.

Currently, only attributes declared by a resource's schema are
dirty-tracked.

[ActiveModel::Dirty]: https://api.rubyonrails.org/classes/ActiveModel/Dirty.html
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant