我有一个名为“Person”的 NSManagedObject 类
import Foundation
import CoreData
@objc(Person)
public class Person: NSManagedObject {
@NSManaged public var firstName: String
@NSManaged public var secondName: String
}
在另一个 View Controller 中,我设置了以下变量:
var Persons = [Person]()
现在我想向我的变量 Persons 添加一个新值。 我尝试过这样的事情:
Persons.append(<newElement: Person>)
但是我必须对占位符使用哪种语法 <newElement: Person>
添加一个有名字和名字的新人?
最佳答案
您必须使用指定的初始化程序
var people = [Person]() // variable names are supposed to start with a lowercase letter.
let newPerson = NSEntityDescription.insertNewObject(forEntityName: "Person", into:context) as! Person
newPerson.firstName = "John"
newPerson.lastName = "Doe"
people.append(newPerson)
context
表示核心数据堆栈的托管对象上下文。
要永久保存新对象,您必须保存上下文。
关于cocoa - 将新元素添加到 NSManagedObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44247591/