【发布时间】:2020-04-25 00:50:52
【问题描述】:
我正在尝试将JSON 数据加载到CoreData。在这里,我使用 JSON structure 进行解码,然后我尝试将 decodable 数据提取到 CoreData 中。我不知道如何将 decodeable 与 iterate 数据一起使用并提取到 coredata 中。下面的代码我试过了,但没有得到正确的结果。请帮我解决这个问题。
我的 JSON
{
"status": true,
"data": [
{
"id": "20",
"name": "ar1"
},
{
"id": "21",
"name": "ar2"
},
{
"id": "22",
"name": "ar3"
}
]
}
我的 JSON 结构
struct userList: Codable {
let status: Bool
let data: [userData]
}
struct userData: Codable {
let id, name: String
}
我的 Coredata 实体
var users = [User]() // User is my entity name
JSON 可编码并尝试加载到 CoreData
do {
let result = try JSONDecoder().decode(userList.self, from:data) // here I am dong mistakes.
let status = result.status
if status == true {
let newPerson = User(context: self.context)
newPerson.id = "" // Cant able to get values
newPerson.name = ""
self.users.append(newPerson)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
self.tableView.reloadData()
}
} else {
print(error)
}
} catch {
print(error)
}
【问题讨论】:
-
请解释您的代码的哪一部分不起作用。目前还不是很清楚你在问什么。 “here I am dong errors”和 Cant able to get values“没有帮助,您需要更具体。另见How to Ask。
-
@vadian 你能帮我解决这个问题吗?