Avatar QuozPowa
Auteur Admin

Rails/ActiveRecord : Obtenir la liste des attributs modifiés

1

Comment est-il possible de connaitre la liste des attributs modifiés lors de la mise à jour d'une entité ActiveRecord dans Rails ? Une entité persistée a-t-elle connaissance des attributs changés et si oui à travers quelles méthodes ? L'objectif est de pouvoir se servir des conditions <attribut>_has_changed?
La classe Dirty d'ActiveModel le permet et il semblerait qu'ActiveRecord dispose aussi de méthodes similaires.

https://api.rubyonrails.org/classes/ActiveModel/Dirty.html

https://api.rubyonrails.org/classes/ActiveRecord/AttributeMethods/Dirty.html

Les changements des attributs ne sont pas traqués par défaut ?

EDIT : le problème est résolu en passant de la version ruby 2.7.0 à 2.7.3 en réinstallant les dépendances. Ma version d'ActiveRecord n'était visiblement pas à jour.
Liens joints à ce post