如何从核心数据中删除元素?

时间:2017-12-29 20:36:51

标签: swift core-data

我正在实施一个删除按钮,删除核心数据中的术语和定义。我尝试过的实施工作并没有奏效 我的deletePressed函数有什么问题,如何让它正常工作?

@IBAction func deletePressed(_ sender: Any) {
  do {
    fetched = try context.fetch(Card.fetchRequest())
    for object in fetched {
      context.delete(object)
    }
  } catch {
    print("you done messed up")
  }
  ad.saveContext()
  fetchData()
}

func fetchData() {
  do {
    fetched = try context.fetch(Card.fetchRequest())
    for each in fetched {
      termLabel.text = each.term!
      definitionLabel.text = each.definition!
      fetchedTerm.append(each.term!)
      fetchedDefinition.append(each.definition!)
    }
  } catch {
    print("")
  }
  termIterator = fetchedTerm.makeIterator()
  definitionIterator = fetchedDefinition.makeIterator()
}

此功能应在按下时删除术语和定义,但不会删除核心数据中的术语或定义。 context.delete(object)应该删除它们,但由于某种原因它不起作用 你有没有机会知道它有什么问题?

1 个答案:

答案 0 :(得分:0)

问题是我没有在(object as NSManagedObject)函数中投放context.delete()