If you need to keep track of a model’s history of changes and switch between versions, consider using the vestal_versions gem like I show in this episode.

Read more at the source