如何强制重新获取 NSManagedObject 的关系集

Posted

技术标签:

【中文标题】如何强制重新获取 NSManagedObject 的关系集【英文标题】:How do I force refetch a relationship set of a NSManagedObject 【发布时间】:2012-09-03 13:39:54 【问题描述】:

如何从 Persistent 存储中强制重新获取 nsmanagedobject 的关系?

关系是一个nsset。它的内容可能已被其他上下文更改。更改可能包括集合中的新元素、集合中现有元素的删除和更新。

【问题讨论】:

【参考方案1】:

如果你有不同的 NSManagedObjectContexts 你需要监听“保存”。

[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(updateStuff:)
                                                 name:NSManagedObjectContextDidSaveNotification
                                               object:nil];

一旦完成,您就可以“刷新”您的数据。

- (void)updateStuff:(NSNotification *)notification

    NSArray *array = [myEntity.theRelationship allObjects];

【讨论】:

以上是关于如何强制重新获取 NSManagedObject 的关系集的主要内容,如果未能解决你的问题,请参考以下文章

具有强制关系的 NSManagedObject

NSManagedObject 如何重新加载

当更新版本已经在内存中时,强制核心数据从以前存储的版本刷新 NSManagedObject

如何强制 Yarn 重新安装软件包?

变异后如何强制App重新渲染?

NSManagedObject - 如何获取属性的类型