ios - 尝试访问配置时领域崩溃
问题描述
我将 Object 类添加到 Aps 和 Alert 类中,现在应用程序在尝试访问 Realm 配置时崩溃并出现错误:
线程 1:异常:“无效的类子集列表:\n- 'PushNotification.aps' 链接到类 'Aps',领域管理的类列表中缺少该类”
我试图提高架构版本,完全删除派生数据,删除应用程序 - 没有任何帮助。
领域配置文件
struct RealmGatewayImp: RealmGateway {
let configuration: Realm.Configuration
private init(config: Realm.Configuration) {
configuration = config
}
var realm: Realm {
try! Realm(configuration: configuration)
}
// MARK: - Push notification
// The app crashes here
private static let pushConfig = Realm.Configuration(
fileURL: try! Path.inSharedContainer("pushNotifications.realm"),
schemaVersion: 1,
deleteRealmIfMigrationNeeded: true,
objectTypes: [PushNotification.self])
public static var push: RealmGatewayImp = {
RealmGatewayImp(config: pushConfig)
}()
}
家长班
@objcMembers
final class PushNotification: Object, Codable {
dynamic var accCodeIso: String?
dynamic var account: String?
dynamic var accType: String?
dynamic var amount: String?
dynamic var aps: Aps?
dynamic var commentary: String?
dynamic var corrAccCodeIso: String?
dynamic var corrAccount: String?
dynamic var corrAccType: String?
dynamic var date: Date?
dynamic var docType: String?
dynamic var id: String?
dynamic var payAmount: String?
override static func primaryKey() -> String? {
"id"
}
}
参数类别
@objcMembers
final class Aps: Object, Codable {
dynamic var alert: Alert?
}
@objcMembers
final class Alert: Object, Codable {
dynamic var body: String?
dynamic var title: String?
}
解决方案
如果您要指定 Realm 管理的对象,它需要是一个完整的列表。代替
objectTypes: [PushNotification.self])
尝试
objectTypes: [PushNotification.self, Aps.self, Alert.self])
推荐阅读
- node.js - 获取 SyntaxError /app/src/index.js:ReactDOM.render 的意外令牌
- git - 如何从现有仓库为一个文件创建仓库?
- advanced-custom-fields - Checkbox / Beaver Builder + ACF的条件逻辑
- apache-camel - Camel 创建的 EventProcessorClient 实例数
- intellij-idea - Intellij 数据库查看器中显示的 postgres 数据库的架构详细信息为空
- vue.js - 在vue中找不到组件时如何显示存根组件
- html - html popup google.script.run 适用于我,但不适用于制作工作簿副本的其他人
- python - Python sort() 时间复杂度如何随非 O(1) 复杂度的 lambda 函数变化?
- .net - 在 PerfView 中诊断内存时查找线程的 URL
- firebase - SwiftUI 删除 Firebase 删除观察者错误