2013-08-07 43 views
0

我在我的應用程序中有兩個tableView,用戶應該可以將對象添加到它們兩個。使用一個tableView它工作正常(只有一個coreData 實體)。但是當我添加另一個實體並且只使用一個tableView執行相同的操作時,xcode向我顯示一個錯誤。CoreData-Project有兩個實體

輸出是:

Unresolved error Error Domain=NSCocoaErrorDomain Code=134100 "The operation couldn’t be completed. (Cocoa error 134100.)" UserInfo=0x10333d80 {metadata={ 
    NSPersistenceFrameworkVersion = 419; 
    NSStoreModelVersionHashes =  { 
     Buy = <883135e4 2884b0ed 4bb8fc1c 7d56c229 fbae3090 91be719d 73ac5d66 65e70b18>; 
    }; 
    NSStoreModelVersionHashesVersion = 3; 
    NSStoreModelVersionIdentifiers =  (
     "" 
    ); 
    NSStoreType = SQLite; 
    NSStoreUUID = "..."; 
    "_NSAutoVacuumLevel" = 2; 
}, reason=The model used to open the store is incompatible with the one used to create the store}, { 
    metadata =  { 
     NSPersistenceFrameworkVersion = 419; 
     NSStoreModelVersionHashes =   { 
      Buy = <883135e4 2884b0ed 4bb8fc1c 7d56c229 fbae3090 91be719d 73ac5d66 65e70b18>; 
     }; 
     NSStoreModelVersionHashesVersion = 3; 
     NSStoreModelVersionIdentifiers =   (
      "" 
     ); 
     NSStoreType = SQLite; 
     NSStoreUUID = "..."; 
     "_NSAutoVacuumLevel" = 2; 
    }; 
    reason = "The model used to open the store is incompatible with the one used to create the store"; 
} 
(lldb) 

我試圖解決這個問題了幾個小時,但我沒有在第二的tableView同樣的事情在第一。

也許有人可以幫助我。謝謝advancen

+0

您是否搜索「用於打開商店的模型不兼容...」錯誤消息?應該有一些點擊... –

回答

0

當你設計你的模型,你需要做的遷移:

http://developer.apple.com/library/ios/#documentation/cocoa/Conceptual/CoreDataVersioning/Articles/Introduction.html

所以,你應該做的第一件事是創建一個新的模型版本。

對於諸如添加字段和實體的內容,coredata可以通過輕量級遷移自動執行此操作。對於更復雜的事情,您需要創建一個映射模型。

如果您的應用不在商店中,並且沒有任何用戶,您根本不需要擔心遷移。只需從手機/模擬器中刪除應用程序並運行您的應用程序。如果您在商店中有應用程序,則必須指定新的型號版本並進行遷移。