1

新しいオブジェクト モデルを作成しました。アプリを開くと、次のエラーが表示されます。

*** Terminating app due to uncaught exception 'RLMException', reason: 'Invalid class subset list:
- 'Mod.generalSettings' links to class 'Setting', which is missing from the list of classes managed by the Realm
- 'Mod.contextSettings' links to class 'Setting', which is missing from the list of classes managed by the Realm
- 'Mod.accountSettings' links to class 'Setting', which is missing from the list of classes managed by the Realm'

同期された Realm を保持する Realm Object Server をシャットダウンすると、このエラーは発生しません。これは、起動時に実行される構成です。

Realm.Configuration.defaultConfiguration = Realm.Configuration(
        syncConfiguration: (user, syncServerURL!),
        objectTypes: [Dot.self, Mod.self, Setting.self])

これにより、リモート レルムの移行を実行する必要があると考えるようになりました。これどうやってするの?

4

1 に答える 1

0

クライアントからサーバー上の Realm ファイルに直接アクセスすることはできません。ローカルで移行を実行するだけで、変更がサーバーにプッシュされます。

列を削除しない場合は、次のように簡単に移行を実行できます。

Realm.Configuration.defaultConfiguration = Realm.Configuration(
        syncConfiguration: (user, syncServerURL!),
        schemaVersion: 1,
        migrationBlock: { migration, oldSchemaVersion in },
        objectTypes: [Dot.self, Mod.self, Setting.self])

それが役立つことを願っています!

于 2016-10-25T18:27:30.600 に答える