Попытка выучить core data
и застрять на этом месте, где я устанавливаю данные, но когда я пытаюсь получить их, возвращается только последний элемент. У меня такое ощущение, что это потому, что setValue
перезаписывает предыдущие значения.
func setData(data: People) {
let enmployeeEntity = NSEntityDescription.entity(forEntityName: "EmployeesCoreData", in: context)
let employee = NSManagedObject(entity: enmployeeEntity!, insertInto: context)
for i in 0...data.people.count - 1 {
employee.setValue(data.people[i].name, forKey: "name")
print(data.people[i].name)
}
}
print
дает мне все десять элементов, так что, по крайней мере, я знаю, что они там.
Тогда, когда я пытаюсь fetch
, все, что я получаю, это самый последний элемент data.people[i].name
.
func fetchMyData() {
do {
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "EmployeesCoreData")
let result = try context.fetch(request)
print(result.count) //Returns 1
for data in result as! [NSManagedObject] {
let myDataName = data.value(forKey: "name") as! String
print("?", myDataName)
}
} catch {
let nserror = error as NSError
print(nserror)
}
}
Есть идеи, почему отображается только последний element
? Дайте мне знать, если вам нужно больше кода.