2011-03-25 33 views
1

我改名爲我的項目..一步一步我改名的所有目標,AppDelegate的類等等反正現在建立,但崩潰,因爲它無法找到下面的代碼的.momd :不能在xcode4 momb編輯xcdatamodeld

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"MyApp" withExtension:@"momd"]; 

如何獲得它'刷新'或再次建立這個momd文件?我已經閱讀了各種可能的解決方案,其中包括在.xdatamodeld文件中添加一個版本,但是另外還有一個解決方案。

當我點擊.xdatamodeld文件時,它不再打開編輯器。它什麼都不做。右鍵點擊給我零選項。

我試圖刪除文件xdatamodeld並創建一個新的,但它有同樣的問題。當我按下它時,它不會打開編輯器。

當我創建一個全新的核心數據的Xcode項目模板,它打開編輯器,當我按下就可以了。我在這裏做錯了什麼?

回答

2

我仍在使用的Xcode 3,但是當我雙擊.xdatamodeld文件,它只是打開的組織者。如果我雙擊一個.xdatamodel文件,它將啓動該項目。這可能是因爲xdatamodeld文件夾,而不是單個文件。這聽起來像你的問題是,項目文件已經失去了你正在使用的媽媽的跟蹤。

這裏有一些注意事項我過去解決問題過程中取得:

  • 疑難解答質數據庫訪問 - 獲得正確的媽媽:
  • 懷疑的是,managedObjectContext沒有指向正確的數據模型的第一件事(或管理對象模型,「媽媽」)。 (事實上​​,你可能正在使用的類型:@「momd」,但它是一個已經失去了目標的媽媽。)
  • 在您的應用程序委託,尋找訪問方法managedObjectModel(由Xcode中創建的,當你規定的核心數據存儲在創建該項目)。在這個方法的斷點處,在返回媽媽的線上。
  • 執行該程序,當它遇到斷點時,轉到調試器模型,然後鍵入「po」,然後鍵入正在返回的mom變量的名稱。 (這是gdb的「打印對象」命令。)
  • 打印出的內容將包括「實體{」,後面跟着數據模型中實體的描述。如果大括號後面沒有任何內容,則會返回一個空白媽媽 - 您沒有訪問正確的數據模型。
  • 如果在Xcode中單擊xcdatamodel會按預期顯示完整數據模型,那麼它是否包含在xcdatamodeld中?這是一種捆綁器/路由器/路徑文件,它可能已經迷失了方向。這樣做:
    - 首先,是當前的xcdatamodel,一個帶有綠色複選圖標的第一個?如果沒有,將其拖到第一個位置,然後再次測試該應用程序。
    - 在Finder中,在其他地方複製xcdatamodel以便妥善保管。
    - 在Finder和/或Xcode中擺脫xcdatamodeld(我不知道我在做這件事的順序)。完成後,它不應該出現在Xcode中。
    - 從Finder中xcdatamodel(一個項目文件夾)拖動到Xcode的組&文件窗格中的項目,並選擇進行復印項目的選項。
    - 選擇xcdatamodel,Design> DataModel> AddModelVersion。現在你應該有一個新的xcdatamodeld文件。
    - 再次運行測試,在斷點處執行gdb print object命令。希望你會得到一個很好的長打印輸出,代表你的數據模型。
    - 將來,避免將xcdatamodel/d文件分組到Xcode中的文件夾中。這似乎混淆了事情。
  • 檢查Finder中xcdatamodel/d文件的內容: 這些實際上是變相的文件夾,您將看到是否刪除其擴展名。數據模型的內容是一個plist,你可以通過雙擊打開它。 如果你這樣做,以後測試你的應用程序,並確保它仍然能夠訪問你的數據庫。如果沒有,請按照上述步驟操作。
0

我處於相同的狀況,最後修好了。

在我的情況下,問題來自Xcode項目組屬性:路徑

檢查具有xcdatamodeld文件的項目組的路徑屬性。

在我的情況,它是從xcdatamodeld文件確實存在不同,

和xcdatamodeld文件的路徑爲../Model/XX.xcdatamodeld(例如)

反正有沒有問題,但總有一天我刪除了作爲組路徑屬性的目錄。

因此,Xcode無法找到xcdatamodeld文件。我添加新的xcdatamodled文件,但這種情況重複。

檢查您的xcdatamodeld文件是否確實存在於您的項目設置中。

0

我的解決方案是恢復到我的.xcdatamodeld的工作副本。然後,不是通過取景器或XCode中4的導航窗格中重新命名它,我選擇在左側導航窗格中的.xcdatamodeld文件和編輯.xcdatamodeld的組名右窗格中的XCode 4下頂部標題標識

當我在那裏更改名稱以匹配我的新項目名稱時,XCode會自動爲我更新文件系統上的文件名稱。

我沒有編輯路徑屬性爲moon6pence建議。

3

我將.xcdatamodeld文件重新添加到我的項目中,並刪除了舊的參考。現在再工作。