如何删除所有对象?我知道我可以删除一个
[managedObjectContext deleteObject:objToDelete];
Run Code Online (Sandbox Code Playgroud)
是否有可能删除所有没有迭代所有数组?谢谢
我正在使用coreData,具有一对多的实现,我有一个文件夹实体和一个文件实体.文件夹可以包含许多文件,依此类推.
所以,我有两个ViewControllers,FolderViewController和FileViewController,它们分别包含文件夹和文件.现在我有一个modalView,可以从文件夹和文件viewcontroller访问.在这个VC中,我有一个重置所有数据的按钮.所以,当我点击这个时,我想要重置所有数据.
我使用了这段代码,这个函数是用appdelegate.m编写的,并从我的VC中调用.
- (void)resetToDefault
{
NSError * error;
// retrieve the store URL
NSURL * storeURL = [[__managedObjectContext persistentStoreCoordinator] URLForPersistentStore:[[[__managedObjectContext persistentStoreCoordinator] persistentStores] lastObject]];
// lock the current context
[__managedObjectContext lock];
[__managedObjectContext reset];//to drop pending changes
//delete the store from the current managedObjectContext
if ([[__managedObjectContext persistentStoreCoordinator] removePersistentStore:[[[__managedObjectContext persistentStoreCoordinator] persistentStores] lastObject] error:&error])
{
// remove the file containing the data
[[NSFileManager defaultManager] removeItemAtURL:storeURL error:&error];
//recreate the store like in the appDelegate method
[[__managedObjectContext persistentStoreCoordinator] addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error];//recreates the persistent …Run Code Online (Sandbox Code Playgroud)