그래서 CoreData에서 요소를 삭제하려고했는데 Stackoverflow에서 다른 답변을 따라했습니다. 버튼을 코어 데이터 하나의 요소를 삭제 NSManagedObject Swift
moneyManager.moneys.removeAtIndex(indexPath.row)
let appDel: AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context = appDel.managedObjectContext
do {
context.deleteObject(moneyManager.moneys[indexPath.row] as! NSManagedObject)
try context.save()
}catch {
print("Error not saved")
}
을 클릭하면 다음 코드가 데이터 모델에서 요소를 삭제의 내가 얻을 오류가 있습니다 :
캐스트를 '돈'에서 관련이없는 유형 'NSManagedObject'에 항상
실패
이제 다른 사람들이 AnyObject 배열을 사용하는 것을 보았습니다. 그렇지만이 배열이 어디에서 왔는지, 어디에서 선언해야하는지 이해하지 못합니다.
moneyManager는 사용자가 수행 한 모든 화폐 거래의 데이터를 저장하는 돈 배열을 갖는 클래스입니다. 나는 여기에서 데이터가 아니라 엔티티 자체에서 데이터를 삭제해야한다고 생각합니다. 맞습니까? 사전
실제 유형은 무엇입니까? 그런데 코드에 치명적인 오류가 있습니다. 객체 배열에서 삭제 된 객체와 컨텍스트에서 삭제 된 객체가 서로 다를 가능성이 큽니다. – vadian
구조체이고 돈을 String으로, 금액을 money로 두는 형태의 money 타입입니다. – KarolisShp
컨텍스트에서 삭제 된 객체는 'NSManagedObject' 유형이어야합니다. 'NSFetchedResultsController'를 사용하고 있습니까? – vadian