In a Core Data project, I've got two buttons on my interface (a table), one which edits the data about a person and saves it to the db, and one lets you visually fiddle around with the data without actually saving it to the db. How do I 'detach' the core data object, so that it so it won't write data to the db? I've tried to write a new NSObject class which mimic the NSManagedObject class, and then move the data into the NSObject class, but it still changes the db!
//button for editing and saving
PersonObj *person = (PersonObj *)[fetchedResultsController objectAtIndexPath:indexPath];
PersonEditViewController *editViewController = [[PersonEditViewController alloc] initWithStyle:UITableViewStyleGrouped];
// puts the managed object into the new view controller
editViewController.person = person;
[self.viewController pushViewController:editViewController animated:animated];
[editViewController release];
//button for editing and NOT saving
PersonObj *person = (PersonObj *)[fetchedResultsController objectAtIndexPath:indexPath];
PersonFiddlingViewController *fiddling = [[PersonFiddlingViewController alloc] initWithStyle:UITableViewStyleGrouped];
// move db data into non-db class??? not working
fiddling.eyeColor = person.eyeColor;
fiddling.name = person.name;
[self.viewController pushViewController:fiddling animated:animated];
[fiddling release];