Update core data object swift 3

后端 未结 2 1250
刺人心
刺人心 2021-02-05 21:52

I want to update a core data object in swift 3. After some googled I didn\'t found anything about swift 3. So my question is: how can I update a core data object in swift 3?

2条回答
  •  猫巷女王i
    2021-02-05 22:32

    Pass unique id in variable "id"(Unique variable created in Core data model) and all the variable as you want to update values:

    func context() ->  NSManagedObjectContext {
        let context=(UIApplication.shared.delegate as!AppDelegate).persistentContainer.viewContext
            return context
    }
    
    
    
    func save() {
        (UIApplication.shared.delegate as! AppDelegate).saveContext()
    }
    
    func UpdateCartByTestId(id:Int64,name:String) {
        let fetchRequest =
                NSFetchRequest(entityName: "Update")
        fetchRequest.returnsObjectsAsFaults = false
        fetchRequest.predicate = NSPredicate(format:"id == %d",id)
    
        let result = try? context().fetch(fetchRequest)
    
        if result?.count == 1 {
    
            let dic = result![0]
            dic.setValue(id, forKey: "id")
            dic.setValue(name, forKey: "name")
            save()
        }
    }
    

提交回复
热议问题