_Use of undeclared type 'Transcription'
_
Swift 3( https://learnappdevelopment.com/uncategorized/how-to-use-core-data-in-ios -10-Swift-3 / )
そして、私は次の行で上記のエラーを受け取ります:let fetchRequest: NSFetchRequest<Transcription> = Transcription.fetchRequest()
再確認したところ、エンティティ「文字起こし」のスペルが.xcdatamodeldファイルに正しく記述されています
チュートリアルはSwift 3用に設計されましたが、リリースされてから修正された別の変更があったため、Swiftのその他の変更を推測しています過去2か月がこのエラーの原因です。
私はCore Dataを初めて使用するので、これをデバッグする方法がわかりません。私は解決策にとても感謝しています!
忘れないでくださいimport CoreData
をサブクラスに
同じエラーに悩まされ、Xcode 8.2.1を使用していました。プロジェクトをクリーンアップし、Xcodeを閉じて再度開き、ビルド後にエラーが解消されました。
データモデルを強調表示し、[エディター]-> [NSManagedObjectサブクラスの作成...]に移動します。
これはエラーを解決しました
これは、Xcodeがパスを判別できない.xcdatamodel
、プロジェクトをクリーンアップすると、関連するエラーが表示される場合があります。このエラーは名前の変更が.xcdatamodel
。
解決には以下が含まれます。
.xcdatamodel
-> Finderに表示.xcdatamodel
プロジェクトにインポートするには、新しいエントリを作成する必要があります.xcdatamodel
エントリ。Xcodeバージョン8.2ベータ(8C30a)を使用して、エンティティを追加または変更すると、同じエラーが発生します。データモデルインスペクターで、動的クラスを自分で生成するかのように、CodegenオプションをManual/Noneに戻します。保存してから、Category/Extensionに戻すと、動作するようです。 (また、Option-CleanでプロジェクトをクリーンアップしてXCodeを再起動してみましたが、簡単に再現できました。)アップグレード8.3ベータ版でこのバグが修正されることを願っています。
私の場合、エラーを引き起こしていたエンティティ(あなたの場合は「文字起こし」)を.xcdatamodeldファイルから削除してから、手動で再度追加する必要がありました。