我在我的项目中使用 SwiftData。在模拟器中的 Xcode 15 beta 4 下一切正常。自从我更改为 Xcode 15 beta 5 以来,我多次收到以下错误:
CoreData:错误:此应用程序中的一个或多个模型正在使用可转换属性,其转换器名称要么未设置,要么设置为 NSKeyedUnarchiveFromDataTransformerName。请改用“NSSecureUnarchiveFromData”或 NSSecureUnarchiveFromDataTransformer 的子类。在某些时候,当指定 nil 时,Core Data 将默认使用“NSSecureUnarchiveFromData”,并且包含不支持 NSSecureCoding 的类的可转换属性将变得不可读。“NSKeyedUnarchiveFromData”不应用于取消存档,并将在未来版本中删除
我知道这是底层 CoreData 设置中的错误。但是,如何更改 CoreData 配置?如果您直接使用 CoreData,您可以更改配置,但是当您使用 SwiftData 时,如何更改配置。为什么苹果不从一开始就使用正确的配置?
我正在使用定义我的模型的标准代码:
@Model final class LoggerItem {
@Attribute(.unique) let id: UUID
var title: String
var created: Date
var modified: Date?
...
}
Run Code Online (Sandbox Code Playgroud)
这已经创建了上述错误消息。