Я использую realm в своем текущем приложении, и я подумал о обновлении своего приложения. Теперь этот процесс принимает migrating of tables
и новые объекты и схему, если вы используете базу данных в приложении для сохранения некоторых значений.Realm - Column Type is not vaid
Моя проблема здесь в том, что у меня возникают некоторые проблемы с миграцией, потому что theres не является хорошей документацией для миграции Realm, но я получаю пару ошибок, которые включают в себя error : Column type not valid
.
Это мой подход к мигрирующего:
Во-первых, это, как конфигурация область выглядит следующим образом:
public class RealmHelper implements RealmMigration {
public static final long SCHEMA_VERSION = 2; // This was the 2nd schema.
public static final String REALM_NAME = "john.example";
public static RealmConfiguration getRealmConfig(Context context) {
return new RealmConfiguration.Builder(context)
.name(REALM_NAME)
.schemaVersion(SCHEMA_VERSION)
.migration(new Migration())
.build();
}
}
Во-вторых, это класс миграции: Это где выпуск есть.
public class Migration implements RealmMigration {
@Override
public long execute(Realm realm, long version) {
if(version == 2){
// Issue is here. Notice the "otherModel". That is an entity in the SampleClass table.
Table sampleTable = realm.getTable(SampleClass.class);
sampleTable.addColumn(ColumnType.TABLE, "otherModel", true);
}
}
}
И последнее, SampleClass, который является оболочкой для конкретной модели данных.
public class SampleClass extends RealmObject {
@SerializedName("somename")
private OtherModel otherModel;
public OtherModel getOtherModel() {
return otherModel;
}
public void setOtherModel(OtherModel otherModel) {
this.otherModel = otherModel;
}
}
Исходя из текущей ситуации, я получаю сообщение об ошибке здесь, где он говорит, что ColumnType не является действительной.
Table sampleTable = realm.getTable(SampleClass.class);
sampleTable.addColumn(ColumnType.TABLE, "otherModel", true);
Я не уверен, что именно может быть тип столбца, если его просто объект в модели Wrapper.
Я действительно ценю любую помощь здесь .. спасибо заранее :)
Получил это. Спасибо за объяснение .. Действительно полезно. И да, ColumnType.LINK был тем, что мне не удалось найти в документах. Спасибо.. :) – mike20132013