我想将一个包含28个条目的数组存储到我的coreData中。有没有办法做到这一点? 我尝试使用此代码,但看起来这段代码只是重写了这个值。
let appDelegate =
UIApplication.shared.delegate as! AppDelegate
let managedContext = appDelegate.persistentContainer.viewContext
let entity = NSEntityDescription.entity(forEntityName: "PillTook",
in:managedContext)
let value = NSManagedObject(entity: entity!,
insertInto: managedContext)
for var index in 0...27 {
value.setValue(false, forKey: "took")
do {
try managedContext.save()
pillTook.append(value)
} catch let error as NSError {
print("Could not save \(error), \(error.userInfo)")
}
}
答案 0 :(得分:0)
是的,您的代码只创建一个nil
,并在for循环中更新其NSManagedObject
属性的值。将took
行移动到for循环中,为每次迭代创建一个新的let value = ...
。我还建议在for循环后只保存一次上下文,而不是在每次迭代时保存:
NSManagedObject