ここで間違っていることがわかりません:/'NSUnknownKeyException'、理由: '[<Users 0x78eb5bf0> valueForUndefinedKey:]:エンティティUsersがキー "James"のコード値に符合していません。
私が望むのは、特定の名前でエンティティ内のコアデータ属性に格納されているすべてのデータを取得できることです。
たとえば、ユーザー「James」についてすべての情報が格納されています。ここで
は私のコードです:
func getUserDetails(name: String) {
let context = appDelegate.persistentContainer.viewContext
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Users")
request.returnsObjectsAsFaults = false
do {
let result = try context.fetch(request)
for data in result as! [NSManagedObject] {
print(data.value(forKey: name) as! String)
}
} catch {
print("Failed")
}
}
私はそうのように、この情報を設定しています:
func parseJson() {
let context = appDelegate.persistentContainer.viewContext
let entity = NSEntityDescription.entity(forEntityName: "Users", in: context)
let user = NSManagedObject(entity: entity!, insertInto: context)
Alamofire.request(jsonLocation).responseJSON { (responseData) -> Void in
if((responseData.result.value) != nil) {
let swiftyJsonVar = JSON(responseData.result.value!)
for (_, value) in swiftyJsonVar {
let name = value["name"].stringValue
let gender = value["gender"].stringValue
let age = value["age"].intValue
user.setValue(name, forKey: "name")
user.setValue(gender, forKey: "gender")
user.setValue(age, forKey: "age")
do {
try context.save()
} catch {
print("Failed saving")
}
}
}
}
}
が、私は取得していますエラーは次のとおりです。
'NSUnknownKeyException'、理由: '[valueForUndefinedKey:]:エンティティUsersは、キー "James"に対してキー値コーディングに準拠していません。
p.s.これはUserDetailsというクラスにあります。クラスの機能の前にまだ私が設定したクラスのスコープ内:
let jsonLocation = "https://link.to/json/for/users"
let appDelegate = UIApplication.shared.delegate as! AppDelegate
クラスUserDetailはどこですか?エラーはそこから来ているようです。 – Sandeep
もう一度アプリを再インストールして確認できますか? –