のXcodeからコアデータをチェックする方法はありますか?SWIFT:コアデータのレコードをチェック
私は、書き込まれたデータを返すことになっているときに、空の配列を返すに失敗したが読んでいない二つの機能を(DBから読み込まれ、DBに書き込む)作成しました。
機能:私は私のCoreDataエンティティですべてのレコードがあるかどうかのXcodeからチェックしたい
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!")
}
}
。それは可能ですか?
おかげ
- 書き込みがうまく動作するかどうかをチェックする:)私はXcodeの – Almazini
からCD内のレコードをチェックする方法おそらくない良い方法があるはずと思ったが、私たちは時々やることにあります永続的なストアパスを記録し、Finderでそのウィンドウを開き、必要なCoreDataファイルが書き込み後に作成されるかどうかを確認します。もちろん、これはSimulatorでしか動作しませんが、テストでは十分です。 DBが正しく書き込まれているかどうかを確認することができます。 DBがプロパティに書き込まれているかどうかを調べるための粗末な方法。コード自体にチェックインして、ファイルが存在し、サイズがゼロより大きいかどうかを確認することもできます。 DBからの書き込みと読み込みのためのコードを追加できますか? –
はい、これは私のために働くでしょう。私のコードは疑問です。チェックしてください!あなたはどこを見てどのファイルを作成するべきかアドバイスできますか?おかげで – Almazini