2011-07-29 81 views
0

我目前收到的錯誤 -核心數據 - 實體的幫助

*終止應用程序由於未捕獲的異常「NSInternalInconsistencyException」,原因是:「+ entityForName:未能找到NSManagedObjectModel的實體名稱‘收據’ 「

這是如何發生的:

我建立了一個實體和屬性被稱爲‘朋友’。我成功使用Fetch Request獲取並顯示我想要的數據。對我來說,下一個發展階段是添加另一個名爲「Invoices」的實體,它具有各種屬性。我將此添加到數據模型並添加了一個新的獲取請求來反映這一點。

我試圖重置iPhone模擬器,並添加了一個新版本,改變了當前版本,並改回來嘗試清除錯誤,但沒有喜悅。

應用崩潰當它到達此行的代碼:

NSEntityDescription *entity = [NSEntityDescription entityForName:@"Invoices" inManagedObjectContext:self.managedObjectContext]; 
    [fetchRequest setEntity:entity]; 

有什麼建議?

+0

僅供參考 - 我沒有在「朋友」和「發票」實體之間建立任何關係 –

+0

您的數據模型是否在單獨的應用程序中,例如靜態庫?無論如何,我有這個錯誤,因爲.momd文件沒有包含在主應用程序包中。因此上下文無法初始化。你如何加載你的數據模型? – Leonardo

回答

0

檢查您的構建目標以確保您正在使用您認爲正在使用的模型文件。

有時和舊版本.momd文件在您更改模型文件時不會從模擬器中刪除。完全從模擬器中刪除應用程序,清理項目並重建通常可以解決問題。

然而,這種錯誤最常見的原因是簡單的打字錯誤,使用Invoice代替Invoices,反之亦然。