views:

50

answers:

0

In my data model I have an attribute that stores an array of objects. This is setup using an attribute that is transformable, and I am NSKeyedArchiver to convert the array of objects to an NSData object for storage. The object conforms to NSCoding and seems to be stored into the data store without issue on creation. I can close the app and re-open and all is transformed back to the appropriate object and loaded correctly.

However, if I open an existing object and edit it the changes are reflected in the table view immediately, and I see the NSFetchedResultsChangeUpdate fire in the NSFetchedResultsController (just like it does when I am creating the first one) but the new list of objects is not saved. If I quit the app and restart the old data is still in place. If I delete one the same problem occurs.

Basically whatever I set as the array of objects the first time becomes locked in. Any other attribute in the managed object changes properly on update. Is there something special with transformable attributes when you are "updating" them to make the change stick?

Thanks - Mike