感谢您的出色工作。
最近我们处于深度开发过程中,我们刚刚迁移到领域最新版本,从 0.98.1 到 1.0.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;
所以知道,据我所知,我们应该保持MyClass
原样,但改变OwnerClass
而不是旧的:
@property (readonly) RLMLinkingObjects<MyClass *> *myClassInstances;
。
在我们这样做之后,迁移块应该是什么样子?我真的很难理解新结构的外观......感谢任何帮助。