Gibt es eine Möglichkeit, Kerndaten von Xcode zu überprüfen?swift: Datensätze in Kerndaten überprüfen
Ich habe zwei Funktionen erstellt (in DB schreiben, aus DB lesen), die nicht fehlschlagen, aber lesen gibt leere Array zurück, wenn es geschriebene Daten zurückgeben soll.
Funktionen:
func writeData() {
appDel = UIApplication.sharedApplication().delegate as! AppDelegate
context = appDel.managedObjectContext
let newRecord = NSEntityDescription.insertNewObjectForEntityForName("CountryList", inManagedObjectContext: context) as NSManagedObject
let timestamp = NSDate()
for geo in geoArray {
//geoArray - array of dictionaries ([CountryName: "Lithuania", TelCode: 370],[CountryName: "Belarus", TelCode: 375],[CountryName: "Latvia", TelCode: 371])
//geo - Dictionary of tipe <String: AnyObject>
// CoreData: countryName type is String
newRecord.setValue(timestamp, forKey: "dateUploaded")
newRecord.setValue(String(geo["CountryName"]!), forKey: "countryName")
do {
try context.save()
print("Saved successfully")
} catch _ {
print("there was issue saving data!")
}
}
}
func loadData(country: String) {
appDel = UIApplication.sharedApplication().delegate as! AppDelegate
context = appDel.managedObjectContext
results = [AnyObject]()
let request = NSFetchRequest(entityName: "CountryList")
request.resultType = NSFetchRequestResultType.DictionaryResultType
request.predicate = NSPredicate(format: "countryName = %@", country)
let sort1 = NSSortDescriptor(key: "dateUploaded", ascending: true)
request.sortDescriptors = [sort1]
do {
results = try context.executeFetchRequest(request)
print(results!)
} catch _ {
print ("error trying to fetch!")
}
}
Ich mag würde von Xcode überprüfen, ob es irgendwelche Aufzeichnungen in meinem Coredata Einheit sind. Ist das möglich?
dank
das ist, was ich zu tun versucht - zu überprüfen, ob schriftlich gut funktioniert :) Ich dachte, dass es ein Weg sein sollte – Almazini
Wahrscheinlich Aufzeichnungen in CD von Xcode zu überprüfen, nicht ein guter Weg, aber was wir tun, ist manchmal protokollieren Sie den Pfad des persistenten Speichers und öffnen Sie dann dieses Fenster im Finder, um zu sehen, ob die erforderlichen CoreData-Dateien nach dem Schreiben erstellt werden. Natürlich funktioniert das nur im Simulator, aber zum Testen ist das gut genug. Sie können sehen, ob die DB korrekt geschrieben wird. Ein grober Weg, um herauszufinden, ob die DB Eigentum geschrieben wird. Sie könnten auch den Code selbst einchecken, um zu sehen, ob die Dateien da sind und eine Größe größer als Null haben. Könnten Sie den Code hinzufügen, den Sie zum Schreiben und Lesen aus der DB haben? –
Ja, das würde für mich funktionieren. Mein Code ist in der Frage. Bitte prüfe! Können Sie beraten, wo Sie suchen und welche Dateien erstellt werden sollten? Danke – Almazini