2014-01-06 39 views
1

我一直在努力與核心數據3天現在,我只是倒退。我不得不從備份恢復我的整個項目,現在我得到這樣的:從備份還原導致應用崩潰

2014-01-06 14:47:45.911 MyClub[1980:5003] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Can't merge models with two different entities named 'SuperGroups'' 
*** First throw call stack: 
(
    0 CoreFoundation      0x0000000101e70795 __exceptionPreprocess + 165 
    1 libobjc.A.dylib      0x0000000101bd3991 objc_exception_throw + 43 
    2 CoreData       0x00000001000fba1d +[NSManagedObjectModel modelByMergingModels:] + 3357 
    3 CoreData       0x00000001000b8e49 +[NSManagedObjectModel mergedModelFromBundles:] + 521 
    4 MyClub        0x0000000100008499 -[AppDelegate managedObjectModel] + 105 
    5 MyClub        0x00000001000085fa -[AppDelegate persistentStoreCoordinator] + 266 
    6 MyClub        0x000000010000836c -[AppDelegate managedObjectContext] + 92 
    7 MyClub        0x000000010000b112 __38-[MyDownloader populateSuperGroupList]_block_invoke + 1058 
    8 CFNetwork       0x000000010273240e __50-[__NSCFLocalDownloadTask _private_fileCompletion]_block_invoke227 + 83 
    9 Foundation       0x00000001017fc19b -[NSBlockOperation main] + 75 
    10 Foundation       0x000000010184a844 -[__NSOperationInternal _start:] + 623 
    11 Foundation       0x000000010184c71b __NSOQSchedule_f + 64 
    12 libdispatch.dylib     0x0000000102d4e6fd _dispatch_client_callout + 8 
    13 libdispatch.dylib     0x0000000102d3de37 _dispatch_queue_drain + 481 
    14 libdispatch.dylib     0x0000000102d3dbfc _dispatch_queue_invoke + 112 
    15 libdispatch.dylib     0x0000000102d3eb14 _dispatch_root_queue_drain + 257 
    16 libdispatch.dylib     0x0000000102d3ed65 _dispatch_worker_thread2 + 40 
    17 libsystem_pthread.dylib    0x00000001030f8ef8 _pthread_wqthread + 314 
    18 libsystem_pthread.dylib    0x00000001030fbfb9 start_wqthread + 13 
) 
libc++abi.dylib: terminating with uncaught exception of type NSException 
(lldb) 

我該怎麼做(除了在覈心數據,我已經嘗試過多次大聲大汗發誓)?

+0

您是否嘗試從模擬器或手機中刪除應用程序並重新運行它?看起來你的CoreData模型在不同版本之間已經改變了。 – logixologist

+0

工作。非常感謝你。如果您以此爲貼心,我會接受它。 – Alex

回答

0

無論何時您對Core Data的對象模型進行更改,您都必須確保在模擬器/手機上刪除應用程序。設備上的型號必須與代碼中的型號相匹配,否則您將收到錯誤消息。

有一個過程可以讓你在技術上有兩個獨立的模型,所以當你說更新到應用程序商店,你可以做到這一點,用戶不必刪除所有的數據。如果你需要這個,我會研究「核心數據版本控制」。

+0

謝謝!我很感激幫助。 – Alex

1

看起來您的項目中有兩個託管對象模型(兩者都有一個名爲SuperGroups的實體)。嘗試通過其URL加載特定的一個,或從您的項目中刪除重複。