我正在尝试基于“ objectID”访问NSManagedObject。从我的读物中,每个NSManagedObject都会有一个唯一的“ objectID”。但是,当我尝试基于“ objectID”访问对象时,出现以下错误。
CoreData:错误:SQLCore dispatchRequest:异常处理请求:,在userInfo为(null)的实体中找不到键路径objectID
func loadPlayerDetailsFromCoreData() {
let fetch = Player.fetchRequest() as NSFetchRequest
// Create Predicate
let predicate = NSPredicate(format: "objectID == %@", selectedPlayerID!)
fetch.predicate = predicate
do {
let player = try appDelegate.coreDataStack.managedObjectContext.fetch(fetch)
print("Player selected = \(String(describing: player.first?.name))")
} catch {
print("Failed")
}
}
答案 0 :(得分:5)
要基于objectID访问NSManagedObject,只需编写
appDelegate.coreDataStack.managedObjectContext.object(with: selectedPlayerID)
检查