2013-06-03 5 views
-1

Мне нужен совет, как обращаться со следующим случаем. Я сохраняю граф объекта в основных данных. Для простоты можно сказать, что у меня есть объект User (имя, возраст, адрес). Адрес - это еще один объект с некоторыми свойствами. Теперь Пользователь может изменить свой адрес. Если он меняет, мне нужно запомнить эти изменения для следующего заказа. После этого мне нужно вернуться к исходному адресу. Пользователь также может вернуться в любое время. Где я должен сохранить эти временные изменения? Я думал о добавлении нового объекта, такого как ChangedData, но это как-то не так. В основном мне нужно запомнить исходный объект, и если пользователь меняет его, мне нужно помнить об этом в течение некоторого времени. Надеюсь, я мог бы достаточно хорошо выразить свою проблему.Как сохранить темп. изменения объекта?

ответ

1

вам необходимо использовать NSUndoManager в паре с контекстом управляемого объекта. Просто добавьте следующий код

- (NSManagedObjectContext *) managedObjectContext 

в вашей реализации делегата приложения:

NSUndoManager *undoManager = [[NSUndoManager alloc] init]; 
[managedObjectContext setUndoManager:undoManager]; 

затем использовать the methods менеджера отката, чтобы отменить или повторить сохранение контекста.

+0

Это выглядит многообещающе. Не знал об этом. Я попробую. – kukudas

Смежные вопросы