2017-05-04 59 views
0

我已經創建了一個新的領域對象(B),並在現有的領域對象(A),引用新的對象B的新領域。在我的遷移文件,我有這樣的:領域遷移與新的外國領域

if(!realm.getSchema().contains("B")) { 
    realm.getSchema().create("B").addField("name", String.class).addField("resId", int.class); 
} 

RealmObjectSchema schemaA = realm.getSchema().get("A"); 

if (!schemaA .hasField("referenceToB")) { 
    schemaA .addField("referenceToB", B.class); 
} 

它不工作,我也得到:java.lang.IllegalArgumentException異常:境界不支持此場:B型

我怎麼可以在引用創建這個新領域到B我遷移文件?

回答

1

根據文檔,要添加鏈接字段,您需要使用realmObjectSchema.addRealmObjectField()而不是addField()

if (!schemaA.hasField("referenceToB")) { 
    RealmObjectSchema bSchema = schema.get("B"); 
    schemaA.addRealmObjectField("referenceToB", bSchema); 
} 
+0

非常感謝你。 –