When using core data I sometimes think oh I need a new entity or attribute. When I add these I click the "create new NSManagedObjectSubclass" button to get access to these new entities or fields. However, when I fire up the simulator it doesn't work as it says it was created using a different data model. So I delete the app start again but all the data is gone. Is there a way to avoid this? This is going to be crucial for updating the app for future versions because it won't be good for the user to loose all their recorded information every time I need to add an entity or attribute.