2016-09-28 101 views
0

我在Xcode中遇到過很多問題,但這只是開始發生在我所有的項目中。CoreData無法正確'創建NSManagedObject子類'Swift

我創建了一個新實體,我的核心數據模型選擇了正確的「目標成員」。

但是,一旦我嘗試選擇我的新實體的「創建NSManagedObject子類」,嚮導正常需要我通過所有必要的步驟,我得到下面的產生斯威夫特代碼:

import Foundation 
import CoreData 


class CoreDatGeneric: NSManagedObject { 

// Insert code here to add functionality to your managed object subclass 

} 


import Foundation 
import CoreData 


class CoreDatGeneric: NSManagedObject { 

// Insert code here to add functionality to your managed object subclass 

} 

但是...我不能用在我的代碼名爲CoreDatGeneric ANYWHERE這個新雨燕類...

例如,

let data = DoreDatGeneric()

導致編譯器錯誤,指出Use of unresolved identifier 'CoreDatGeneric'

我不知道爲什麼會這樣突然的,我所有的其他老核心數據實體工作得很好,但我被困在不能夠的點在我的任何項目中使用核心數據。

我很擔心升級到Xcode 8,因爲最新的Xcode收到的負面評論。我現在正在使用Xcode 7。

+0

您確定'CoreDatGeneric.swift'屬於Xcode中的應用程序目標嗎?你也確定你正在拼寫類名嗎?你在你的問題中拼寫錯誤.... –

回答

0

轉到數據模型檢查器面板並選擇Codegen爲'Manual/None'。在編輯器下創建託管子類。 Xcode將創建兩個swift文件。一個是* Properties.swift,一個擴展文件,其中包含您模型中的所有屬性(Xcode將在您創建子類的超時時間內覆蓋此文件)。另一個是* Class.swift,您可以在其中添加自定義類行爲。不寫任何代碼,你應該可以在你的ViewController中調用

let data = CoreDatGeneric() 

如果Codegen說'類定義',那麼你不必做Create Managed Subclass,因爲當你生成項目時這些類將會爲你創建(這些文件不會出現在Project Inspector中)。不過,你仍然可以像上面在viewController中所寫的那樣創建一個變量(例如)。

相關問題