嘿,我不斷收到在行這個壞訪問用於開實體店的型號配置與用來創建存儲在一個不兼容的
try managedContext.save()
代碼運行pefectly直到它試圖挽救我的值。我認爲這可能是因爲使用實體的「副本」而不是實際的實體。但是,由於您不能在代碼中實際編輯原始模型,因此這是非常祕密的。所以我所要做的就是在嘗試「.save()」和im好的時候停止這種不良訪問。它在代碼的第四行。
所以基本上當使用try managedContext.save()。我創建一個會打印錯誤的catch。所以我把「!」從「嘗試」的符號,以便我可以看到爲什麼應用程序拋出錯誤,這就是我得到的
致命錯誤:'試試!'表達式意外地引發了一個錯誤:錯誤域= NSCocoaErrorDomain代碼= 134020「用於打開商店的模型配置與用於創建商店的模型配置不兼容。」
代碼:
let appDelegate = (UIApplication.sharedApplication().delegate as! AppDelegate)
let managedContext: NSManagedObjectContext = appDelegate.managedObjectContext
var properties0 = Array<NSAttributeDescription>()
let playersList0 = NSEntityDescription.entityForName("PlayersList1", inManagedObjectContext: managedContext)
let copy = playersList0!.copy() as! NSEntityDescription
let contentTypeAttribute0 = NSAttributeDescription()
contentTypeAttribute0.name = "firstName"
contentTypeAttribute0.attributeValueClassName = "firstName"
contentTypeAttribute0.attributeType = .StringAttributeType
contentTypeAttribute0.optional = true
properties0.append(contentTypeAttribute0)
copy.properties = properties0
let playerslistCopyto = NSManagedObject(entity: copy, insertIntoManagedObjectContext: managedContext)
playerslistCopyto.setValue("John", forKey: "firstName")
do {
try managedContext.save()
} catch {
print("Error") //prints Error everytime
}
這打印 「錯誤」 每次爲續。我基本上只需要瞭解如何保存「複製」
好吧,我還沒有發佈的應用程序,並重新啓動,並從我的手機多次刪除我的應用程序,即時看着MigicalRecord現在。你也會有一個很好的鏈接去進行代碼設置。我從來沒有聽說過MagicalRecord呢@Sealos – Hunter
哦對不起!儘管我在你的文章中讀到了關於魔法記錄的信息,但我的糟糕之處。您可以在此處僅使用核心數據深入瞭解有關輕量級遷移的更多信息:https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CoreDataVersioning/Articles/vmLightweightMigration.html。 – Sealos
好的謝謝@Sealos – Hunter