使用MagicalRecord在关系中重复的CoreData引用

时间:2015-03-31 17:07:29

标签: ios objective-c core-data magicalrecord

我的问题已经持续了很长一段时间。发生的事情是我正在使用MagicalRecord来管理我的CoreData数据库,而且我遇到了某种模型关系的问题。

我在联系人和标签之间有多对多的关系。当我向联系人添加标签时,一切都很好,标签对象显示为:

<DMTag: 0x7b0414b0> (entity: DMTag; id: 0x7d95bb20 <x-coredata://B5BE8668-52A9-49C2-A3AA-7684683C5F2C/DMTag/p70> ; data: {
    contacts =     (
        "0x7d82e6f0 <x-coredata:///DMContact/tB751E1B7-A6D4-4E08-9501-85E5C4A7CF722>"
    );
    identifier = "-68";
    name = Andreas;
    removed = 0;
    synchronized = 0;
}

但是当我保存上下文时,接下来会发生什么(这是回调中的打印,紧跟在保存上下文之后):

<DMTag: 0x7b0414b0> (entity: DMTag; id: 0x7d95bb20 <x-coredata://B5BE8668-52A9-49C2-A3AA-7684683C5F2C/DMTag/p70> ; data: {
    contacts =     (
        "0x7b237f00 <x-coredata://B5BE8668-52A9-49C2-A3AA-7684683C5F2C/DMContact/p344>",
        "0x7b237f00 <x-coredata://B5BE8668-52A9-49C2-A3AA-7684683C5F2C/DMContact/p344>"
    );
    identifier = "-68";
    name = Andreas;
    removed = 0;
    synchronized = 0;
}

在我看来,这个副本无处不在。我提到的保存上下文是:

[self.context saveToPersistentStoreWithCompletion:^(BOOL success, NSError *error) {

和self.context声明为

self.context = [NSManagedObjectContext MR_context];

如果我犯了任何初学者的错误,或者以错误的方式使用MagicalRecord或Core Data,我会有什么想法吗?

提前致谢。

0 个答案:

没有答案