2011-07-07 21 views
1

我遇到了一個場景,我需要在多對多關係中存儲核心數據實體的順序。我打算在關係中使用對象的永久ID,但以下代碼在未保存(未命名)文檔上調用時會導致錯誤。 (我希望能實現類似於BWOrderedManagedObject的東西)調用obtainPermanentIDsForObjects:錯誤:在未保存的文檔中

if(!widget) 
{ 
    widget = [[Widget alloc] initWithContext:[delegate managedObjectContext]]; 

    NSError* error = nil; 

    if(![[widget managedObjectContext] obtainPermanentIDsForObjects:[NSArray arrayWithObject:widget] error:&error]) 
    { 
     NSLog(@"%@", error); 
    } 
} 

然而,當obtainPermanentIDsForObjects:error:被調用時,它會導致以下錯誤:

The model configuration used to open the store is incompatible with the one that was used to create the store.

反正是有,我可以得到一個永久編號文檔保存之前?

回答

5

獲取對象的永久ID需要將該對象寫出到數據庫。實質上,它是以一種特殊的方式拯救這個對象。它與真正的保存一樣昂貴,並且絕對需要您在磁盤上存儲商店。

相關問題