我尝试了 forEntityName:“Game”、“MyApp.Game”。
在我的数据管理器文件中:
let appDelegate = UIApplication.shared().delegate as! AppDelegate
let container = appDelegate.persistentContainer
let managedObjectContext = container.viewContext
for item in items {
let word = NSEntityDescription.insertNewObject(forEntityName: "MyApp.Game", into: managedObjectContext) as! Game
在 Game+coreDataProperties 文件中
extension Game {
@nonobjc class func fetchRequest() -> NSFetchRequest<Game> {
return NSFetchRequest<Game>(entityName: "Game");
}
在游戏+coreDataClass
class Game: NSManagedObject {
}
我使用 .xcdatamodeld 为 CoreData 生成了文件:在对象检查器中我指定了名称:“游戏”,类“游戏”,模块“当前产品模块”,代码生成“类定义”,然后我使用编辑器/创建子类,在我得到 3我将 codegen 属性设置为“手动/无”的文件
我在尝试投射到游戏时遇到运行时错误:“signal SIGABRT”:
NSEntityDescription.insertNewObject(forEntityName: "MyApp.Game", into: managedObjectContext) as! Game
我究竟做错了什么?您还可以建议我一本关于 CoreData 的好手册,并应用了最新的更改吗?