swift - 自定义类到 CoreData 并返回
问题描述
我通过 Decodable 解析一个 jason 并创建一个对象数组,但找不到将其保存在核心数据中的方法,
这是模型:
import UIKit
public struct Movie : Decodable {
let title : String
let image : String
let rating : Double
let releaseYear : Int
let genre : Array<String>
init(title: String ,image : String , rating : Double, releaseYear : Int, genre : Array<String>) {
self.title = title
self.image = image
self.rating = rating
self.releaseYear = releaseYear
self.genre = genre
}
init() {
self.title = "title"
self.image = "image"
self.rating = 0.0
self.releaseYear = 0000
self.genre = ["",""]
}
}
这是我到目前为止所做的
URLSession.shared.dataTask(with: url) { (data, response, err) in
guard err == nil else { return }
guard let data = data else { return }
do {
let movies = try JSONDecoder().decode([Movie].self, from: data)
self.movieList = movies
DispatchQueue.main.async {
self.collectionView.reloadData()
}
} catch let jsonErr {
print("Error serializing json:", jsonErr)
}
}.resume()
试图创建具有各种属性类型的实体,但都是徒劳的
解决方案
推荐阅读
- php - PHP 循环增量怪癖 - (一行中的 FizzBuzz)
- c# - 如何在xamarin表单的listview内的标签中动态设置textcolor
- python - 使 run-clang-tidy 排除文件夹
- azure-log-analytics - Azure Log Analytics - 扩展属性
- xamarin - 带有 Visual Studio 社区的 Mac OS 上的 XF iOS 项目 - XAML 热重载已禁用,因为您的 iOS 链接器设置…是不受支持的消息
- mysql - SQL:为 ID 高于先前且满足条件的条目选择不同的计数
- c# - ProjectLombok 的 C# 替代方案 - “不可变设置器”
- c++ - 在类之间传递函数指针作为参数
- firebase - Firebase 项目在本地工作,但部署的版本输出 CORS 错误
- firebase - 使用 cloud_firestore 和 firebase_core 解决 Flutter 版本失败