领域迁移枚举无法执行

Realm migration enumerate can not execute

我正在为我的 iOS 项目使用领域。当我按照文档所说执行迁移时,

    // Migrtion
    Realm.Configuration.defaultConfiguration = Realm.Configuration(
        schemaVersion: 1,
        migrationBlock: { migration, oldSchemaVersion in
            if oldSchemaVersion < 1 {
                migration.enumerate(WishHistory.className()) { oldObject, newObject in
                    let createdTime = oldObject!["createdTime"] as! NSDate
                    newObject!["satisfiedTime"] = createdTime
                }
            }
    })

我的应用程序会崩溃。错误如下

似乎调用 migration.enumerate() 会崩溃。 如果我不调用这个方法,一切都很好,除了我必须手动设置我的新添加 属性。

[更新]

找一个Same issue

点赞issue表示修改Podfile为

pod 'RealmSwift', :git => 'https://github.com/realm/realm-cocoa.git'
pod 'Realm', :git => 'https://github.com/realm/realm-cocoa.git'

如您所想,这是 Realm 的 known issue,直到 0.96.2 版本发布,下一个版本将提供修复。作为目前的解决方法,我建议使用 CocoaPods 从 master 分支的头部构建,您可以使用以下方法更轻松地实现:

 pod 'RealmSwift', :head
 pod 'Realm', :head

注意:我建议您在下一个版本发布后恢复该更改,并再次使用标记版本,这样可以更轻松地找出问题并跟踪更改和更新时所需的操作。