2

我将迁移添加到我的项目中。经过大量的工作,我让它独立工作。尝试更新时出现错误

@PrimaryKey field 'id' does not support null values in the existing Realm file. Migrate using RealmObjectSchema.setNullable(), or mark the field as @Required

这不适用于我添加的对象中的价值特征。任何人都可以详细说明这一点或链接到有关如何执行此操作的文档吗?我什么都找不到

这是变量

   @PrimaryKey
private String id;

编辑:可能已经解决了

schema.get("Log").setNullable("id", true);
4

1 回答 1

4

好吧,如果您更新了较旧的代码库,那么您将遇到从 0.89.0 开始的重大更改,其中带@PrimaryKey注释的字段可以为空(并且null可以用作 1 个元素的主键)。

因此,如果您不希望您的@PrimaryKey注释字段可以为空,您也应该添加@Required注释。

否则,您应该添加到迁移中:

RealmObjectSchema yourClassSchema = schema.get("YourClass");
yourClassSchema.setNullable("id", true);
于 2016-08-25T04:40:56.307 回答