领域:更改字段名称以进行迁移

Realm: change field name for migration

我想在 Realm DB 迁移过程中更改字段名称。 貌似不支持修改字段名,只能copy-and-remove了

这是正确的吗? 很费时间。

下面的代码是我尝试以复制和删除的方式将字段 value 更改为 summary

RealmSchema schema = realm.getSchema();
schema.get("Invoice")
.transform(new RealmObjectSchema.Function() {
    @Override
    public void apply(DynamicRealmObject obj) {
        obj.set("summary", obj.getString("value"));
    }
})
.removeField("value");

可能你需要的是一个方法:renameField

示例:

RealmSchema schema = realm.getSchema();
schema.get("Invoice").renameField("value", "summary");