gpt4 book ai didi

android - 添加 RealmList (Kotlin) 时出现 RealmMigrationNeededException

转载 作者:搜寻专家 更新时间:2023-11-01 09:29:56 25 4
gpt4 key购买 nike

我想向现有模型添加一个原始列表,但出现异常。
注意:这一切都是 it Kotlin 完成的。

这是模型:

open class Foo(
@PrimaryKey var id: Int = 0
) : RealmObject()

现在我想添加以下字段:

var idList: RealmList<Int> = RealmList()

这可能是一个空列表,所以我用一个空白的 RealmList 初始化它(它曾经用于非原始列表字段)。

我的迁移看起来像这样:

schema.get("Foo")
?.addRealmListField("idList", Int::class.java)

运行应用程序时,我得到一个 RealmMigrationNeededException:

Migration is required due to the following errors:
- Property 'Foo.idList' has been made optional.


我可以通过将 @Required 添加到模型中的新字段来解决这个问题,但我不确定列表是否仍然可以为空/null。

将原始列表添加到模型的正确方法是什么?正确的迁移是什么?

最佳答案

实际上,您的迁移是正确的。如果您不希望列表能够包含 null作为一个值(考虑到它是一个 RealmList<Integer> ,其中 Integer 可以为空),你应该添加 @Required注释。

关于android - 添加 RealmList<Int> (Kotlin) 时出现 RealmMigrationNeededException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47940219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com