我想删除Core Data上的一些特定数据。我从tableView中删除对象,但是当我删除对象时,一些数据也会在进程后删除。有时这是最后一次,有时它是随机数据。如果没有我的要求,我无法理解我的代码中发生了什么。
我在myDeleteObject
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? {
代码:
func myDeleteObject(indexPath: NSIndexPath){
let context:NSManagedObjectContext = ((UIApplication.sharedApplication().delegate as! AppDelegate)).managedObjectContext
let request = NSFetchRequest(entityName: "Log")
request.returnsObjectsAsFaults = false;
request.returnsObjectsAsFaults = false
do
{
let results = try context.executeFetchRequest(request)
for managedObject in results
{
if managedObject.valueForKey("name") as! String == nameArray?.objectAtIndex(indexPath.row).valueForKey("name") as! String{
let managedObjectData:NSManagedObject = managedObject as! NSManagedObject
context.deleteObject(managedObjectData as NSManagedObject)
}
}
} catch let error as NSError {
print("Detele all data in Logs error : \(error) \(error.userInfo)")
}
}
注意:我尝试过模拟器,一切都很好。但是当我尝试使用我的iPhone 5S时,我正在解决这个问题。