1

すばらしい仕事をありがとう。

最近、私たちは深い開発プロセスにあり、0.98.1 から 1.0.1 へのレルムの最新バージョンに移行しました。

問題の 1 つは、次のような移行があったことです。

if (oldSchemaVersion < 2) {
        [migration enumerateObjects:MyClass.className block:^(RLMObject *oldObject, RLMObject *newObject) {
            newObject[@"property"] = [newObject linkingObjectsOfClass:@"OwnerClass" forProperty:@"myClassInstances"].firstObject;
        }];
}

それぞれ、OwnerClassこれを持っています:

@property RLMArray<MyClass> *myClassInstances;

そしてMyClassこれがあります:

@property OwnerClass *instance;

したがって、私が理解しているように、をそのままにしておく必要がありますが、 old の代わりに this: に MyClass変更する必要があります。OwnerClass@property (readonly) RLMLinkingObjects<MyClass *> *myClassInstances;

これを行った後、移行ブロックはどのように見えるでしょうか? 新しい構造がどのように見えるべきかを理解するのに本当に苦労しました...どんな助けにも感謝します。

4

1 に答える 1