iOS (Swift),Realm 迁移添加一个新属性来存储另一个 Realm 对象

标签 ios swift2 realm

我在尝试更新现有 Realm 模型的迁移方案时遇到了一个奇怪的错误。
具体来说,我尝试通过添加一个存储另一个 Realm 对象的属性来更新模型。
但是,无论我如何尝试(甚至尝试删除以前的对象并将其替换为新对象), Realm 都会崩溃并出现以下错误“必须标记 RMOHomebook.general 属性作为可选的“
有什么办法吗?为什么我需要将该属性标记为可选,因为它永远不会是可选的。
非常感谢!

最佳答案

RMOHomebook.general 属性 Object 是子类类型吗? RealmSwift 不支持制作可选的 Object 类型属性。这是目前Realm底层存储引擎的局限。

to-one relationships must be optional

https://realm.io/docs/swift/latest/#relationships

另请参阅 Realm 对象定义速查表。 https://realm.io/docs/swift/latest/#cheatsheet

关于iOS (Swift),Realm 迁移添加一个新属性来存储另一个 Realm 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36419703/

相关文章:

ios - 如何在 swift spritekit 中创建重复片段

iphone - 从不同的 View Controller 访问来自 NSJSONSerialization 的数据

ios - 在 swift 2.2 中处理 Tableview 中的切换

swift - 设置对象创建后的计时器倒计时

arrays - 是否可以在 Realm 中将数组转换为 Result<>?

objective-c - Realm RLMArray 在运行时为 nil

javascript - Expo.Fingerprint.isEnrolledAsync 返回一个对象

ios - 如何在 Storyboard预览中滚动 tableview 或 scrollview

swift - 如何在 Swift 中读取 BLE 特征 float

android - 如何在 Realm android中设置主键自动增量