title: Changing a class of an object in ActiveRecord
body: <p>Let's say I have a <code>FireNinja &lt; Ninja</code> object in my database, stored using single table inheritance. Later, I realize he's really a <code>WaterNinja &lt; Ninja</code>. What's the cleanest way to change him to the different subclass? Even better, I'd love to create a new <code>WaterNinja</code> object and just replace the old <code>FireNinja</code> in the DB, preserving the ID.</p>
  
  <p><strong>Edit</strong>
  I know how to create the new <code>WaterNinja</code> object from my existing <code>FireNinja</code>, and I also know I can delete the old one and save the new one. What I'd like to do is <em>mutate</em> the class of the existing item. Whether I do that by creating a new object and doing some ActiveRecord magic to replace the row, or by doing some sort of crazy thing to the object itself, or even by deleting it and reinserting with the same ID is part of the question though.</p>