我是Coredata的新手,在我的項目中,我必須從API解析JSON,並且需要使用核心數據保存解析的JSON字典。我創建了一個名爲Json的新實體並添加了一個字符串類型的屬性,但是當我這樣做時,它顯示錯誤,'不可接受的屬性的類型的屬性:屬性=「信息」;期望的類型= NSString使用Coredata保存Json字典
但我不能選擇屬性類型NSString,以下是我用來保存json字典使用核心數據的代碼。請爲我提供一個解決方案。
let session = URLSession.shared.dataTask(with: jsonRequest) { (data, response, error) in
if let res = response {
print(res)
}
if let data = data {
do {
let json = try JSONSerialization.jsonObject(with: data, options: []) as! NSDictionary
let NewData = NSEntityDescription.insertNewObject(forEntityName: "Json", into: context)
NewData.setValue(json.value(forKey:"result") , forKey:"information")
do {
try context.save()
print("SAVED")
}
catch {
print(error)
}
}
catch {
print(error)
}
}
}
session.resume()
我的JSON數據如下
{
"result": [
{
"category_name": "today"
},
{
"category_name": "TechCrunch",
"category_image": "1500899368.jpg"
},
{
"category_name": "Science Daily",
"category_image": "1500899358.jpg"
},
{
"category_name": "ShowerThoughts",
"category_image": "1500899351.jpg"
},
{
"category_name": "BBC",
"category_image": "1500899343.png"
},
{
"category_name": "Goal.com",
"category_image": "1500899336.jpg"
},
{
"category_name": "Today I Learned",
"category_image": "1500899329.jpg"
},
{
"category_name": "Times Of India",
"category_image": "1500899321.png"
},
{
"category_name": "MIT Technology Review",
"category_image": "1500899313.png"
},
{
"category_name": "Business Insider",
"category_image": "1500458239.jpg"
},
{
"category_name": "coindesk",
"category_image": "1500544039.jpg",
"data": [
{
"category_id": "34",
"news_id": "215",
"news_quote": "",
"title": "Bitcoin drama",
"image": "2017-07-20/1500544487.jpg",
"date": "2017-09-07 04:10:10"
},
{
"category_id": "34",
"news_id": "225",
"news_quote": "",
"title": "Bitcoin Price Surges",
"image": "2017-07-21/1500629251.jpg",
"date": "2017-09-07 04:10:10"
},
{
"category_id": "34",
"news_id": "229",
"news_quote": null,
"title": "Bitcoin Prices Gain",
"image": "2017-07-22/1500635952.jpg",
"date": "2017-09-07 04:10:10"
}
]
}
],
"response": {
"status": "success",
"status_code": 1,
"message": "success"
}
}
你可以顯示你正在得到的json嗎? – 3stud1ant3
@ 3stud1ant3更新了我的問題 –
看來結果不是字符串,它是一個數組 – 3stud1ant3