簡體   English   中英

從coredata swift中刪除字符串

[英]remove string from coredata swift

我試圖從coredata中刪除一個字符串,我創建了這個函數:

override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
    if (editingStyle == UITableViewCellEditingStyle.Delete) {
        self.statusArray.removeAtIndex(indexPath.row)
        self.tableView.reloadData()
        // Rimuovo da CoreData
        var appDel = UIApplication.sharedApplication().delegate as! AppDelegate
        var context : NSManagedObjectContext! = appDel.managedObjectContext!

        tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)

        let request = NSFetchRequest(entityName: "Status")
        request.returnsObjectsAsFaults = false

        let result:NSArray = context.executeFetchRequest(request, error: nil)!
        context.deleteObject(result[indexPath.row] as! Status)

        context.save(nil)

    }
}

但是實際上當我嘗試從tableView中刪除某些內容時,這給了我SIGABRT錯誤! 此功能有什么問題?

請嘗試以下示例進行刪除。這可能會有所幫助。

var request = NSFetchRequest(entityName: "Status")
var new_sync_details =  NSEntityDescription.insertNewObjectForEntityForName("Status", inManagedObjectContext: context) as! NSManagedObject
var err: NSErrorPointer?


if var results = context.executeFetchRequest(request, error: nil) as? [Status] {
                println("\nResults count: \(results.count)")
                for param in results{
                    println("\nResults param: \(param)")
                    new_sync_details.managedObjectContext!.deleteObject(param as NSManagedObject)
                }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM