Take the 2-minute tour ×  I have an common Core Data app for
iOS. Every time something is changed, I call save from the
NSManagedContext, so all changes are moved to the database.  As
far as I understand, I can only undo changes from the managed
context, but not from database. Am I right?  What I want is
commit all changes immediately to the database and be able to
undo the las action. Is that possible?  The only option I see,
is not committing the last change, that is, leave the last
change in the NSManagedContext, so I can undo that change. But
this idea has a problem, if the program crashes or user makes a
backup (using iTunes or iCloud), then this last change will
disappear. Do you agree with me? How can I have my data always
committed in the database and at the same time have the
possibility to undo the last change? As far as I understand,
that's not possible using Core Data. I hope I'm wrong.  Well, I
would like to know your opinions about this. Thanks.
share|improve this question add comment  1 Answer