可编码似乎是一个非常令人兴奋的功能。但是我想知道我们如何在核心数据中使用它?特别是,是否可以直接从NSManagedObject编码JSON或从其解码JSON?
我尝试了一个非常简单的示例:
并定义了Foo自己:
import CoreData
@objc(Foo)
public class Foo: NSManagedObject, Codable {}
但是当这样使用它时:
let json = """
{
"name": "foo",
"bars": [{
"name": "bar1",
}], [{
"name": "bar2"
}]
}
""".data(using: .utf8)!
let decoder = JSONDecoder()
let foo = try! decoder.decode(Foo.self, from: json)
print(foo)
编译器因以下错误而失败:
super.init isn't called on all paths before returning from initializer
而目标文件是定义的文件 Foo
我想我可能做错了,因为我什至没有通过NSManagedObjectContext,但是我不知道该贴在哪里。
核心数据是否支持Codable?
UYOU
ibeautiful