Swift update bestehender Artikel core data
Ich habe gesehen, viele Beispiele mit einer view-controller für das hinzufügen oder aktualisieren von core-data-Objekte. Irgendwelche Gedanken über vor-oder Nachteile zu tun, die in separaten view-Controller?
Mein code für den Versuch zu tun, das update, ich glaube, ich bin fehlt ein wichtiger Teil, um es zu arbeiten.
@IBAction func saveItem(sender: AnyObject) {
let appDel: AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let context: NSManagedObjectContext = appDel.managedObjectContext!
let en = NSEntityDescription.entityForName("Items", inManagedObjectContext: context)
var existingItem = dataModel.self
if (row > 0) {
println(teaname.text)
existingItem.setValue(teaname.text as String, forKey: "name")
existingItem.setValue(teatype.text as String, forKey: "type")
existingItem.setValue(qty.text as String, forKey: "amount")
existingItem.setValue(temp.text as String, forKey: "temp")
existingItem.setValue(time.text as String, forKey: "time")
} else {
}
context.save(nil)
self.navigationController?.popViewControllerAnimated(true)
}
Bekomme ich (lldb) mit einem Gewinde Haltepunkt an existingItem.setValue(teaname.text as String, forKey: "name")
- Da Sie einen Wert zuweisen mit
existingItem = dataModel.self
, was istdataModel
, und was ist seineself
Eigenschaft?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es nicht angezeigt, Sie haben tatsächlich ein bestimmtes Objekt zu aktualisieren. Ich nutze die folgende Funktion zu Holen, ein Objekt durch seine eindeutige ID. Nur einmal haben Sie ein Objekt (bei mir heißt Ereignis), können Sie es aktualisieren.
Sobald Sie abgerufen haben, ein Objekt und eine core-data-Objekt zu aktualisieren, dann können Sie aktualisieren Sie es wie so.
Und dann können Sie auch speichern Sie Ihre managed-object-context.