我有一个相当简单的模式。基本上,运行<-->数据(其中运行包含从某种传感器采样的数据,例如温度)。
现在,传感器似乎可以有多个测量(例如温度和湿度)。因此,一次运行可能有多个数据样本。
因此,请运行<-->>示例和示例<-->数据。(为了简单起见,我暂时将run<-->数据保留在适当的位置。)
如果我创建了一个新的映射模型,那么事情通常都可以工作——除了没有创建新的样本,运行和样本之间以及样本和数据之间没有建立任何关系。
我正在尝试使用映射模型来迁移我的模型,但是即使对生成的映射模型做了微小的更改,也会导致COCOA错误134110。
例如,如果我取“sample”映射(没有源代码)并将其源代码设置为“run”(以便我可以适当地设置示例的反向关系“run”),则映射会将其名称更改为“run to sample”。此映射中处理了两个关系:数据和运行。数据属性自动设置为
FUNCTION($manager, "destinationInstancesForEntityMappingNamed:sourceInstances:" , "DataToData", $source.dataSet)
在这个例子之后,我将run属性设置为
FUNCTION($manager, "destinationInstancesForEntityMappingNamed:sourceInstances:" , "RunToRun", $source)
同样,我将runtorun中的“sample”属性映射设置为
FUNCTION($manager, "destinationInstancesForEntityMappingNamed:sourceInstances:" , "RunToSample", $source)
以及dataToData中的“sample”属性
FUNCTION($manager, "destinationInstancesForEntityMappingNamed:sourceInstances:" , "RunToSample", $source.run)
所以,我想知道,是什么出了问题?我尝试过各种排列,例如不指定“反向”关系。但不管怎样,我仍然得到同样的错误(134110)。
我想这比看起来容易得多,我遗漏了一些基本的但次要的部分。我还尝试了将nsentityMigrationPolicy子类化,并重写-createDestinationInstancesforSourceInstance:但是这些工作得到了许多相同的结果。
提前感谢您提供任何建议或(相关的:-)建议。
编辑:为了简单起见,我将所有关系标记为可选关系。不过,最终,我可能会选择其他方式。