在Android上的Realm中,如何迁移(添加)新的链接字段

MrR*_*Red 4 migration android realm

好的,所以我有一个比Coin领域对象还多的应用程序。我现在正在升级我的应用程序,并将多个新字段添加到现有的Coin对象。到目前为止一切顺利,但是我该如何迁移LinkingObject,RealmResults类型。linkedPortfolioCoins是我想要迁移的

public class Coin extends RealmObject {
    //a bunch of other fields here

    @LinkingObjects("coin")
    private final RealmResults<PortfolioCoin> linkedPortfolioCoins = null;
}
Run Code Online (Sandbox Code Playgroud)

而且,只有

.addRealmListField
Run Code Online (Sandbox Code Playgroud)

我认为可以代替RealmResults使用,但是如何使它成为Coin的LinkingObject。

我得到的错误是

 Caused by: io.realm.exceptions.RealmMigrationNeededException: Field count is more than expected - expected 18 but was 19
Run Code Online (Sandbox Code Playgroud)

MrR*_*Red 7

确定只是为了将来帮助任何人。看来您不必迁移链接对象。通过不迁移链接的PortfolioCoins并将其遗漏而使其起作用。那也可以解释我的错误:)

  • 是的,您不需要向架构添加`@ LinkingObjects`,如果您已有链接,则会自动创建它们。您只需要创建字段即可访问它们。(我似乎找不到我想引用的帖子,但这是真的。) (2认同)