title: Saving a snapshot of the state of several models literally
body: <p>I'm fairly new to programming, and I'm developing a bookkeeping app in Rails for an analytical lab. When logging maintenance events, it would be useful to save a snapshot of certain data from associated models literally. In other words we have instruments, testing methodologies for the instruments, and maintenance events performed on the instruments, but methodologies are changeable, so it would be nice to have a static record of the state of the methodology when a maintenance is performed. </p>
  
  <p>Is it good database design to simply create a separate snapshot/state model that just stores the data from the associated models literally? This makes sense to me but I'm new enough to programming to be wary of forming bad habits. Thanks!</p>