首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >上一个子对象的核心数据多到多级联归档(毁坏)

问上一个子对象的核心数据多到多级联归档(毁坏)
EN

Stack Overflow用户
提问于 2014-11-13 14:32:03
回答 1查看 27关注 0票数 0

假设我有Project和Path。Project有许多路径(可选)。Paths可以属于许多项目(非可选的,min=1)。当我归档与Path关联的最后一个Path时,Path也应该被归档。但是,当Path属于另一个活动项目时,不应该对其进行归档。

"Archival“等于设置archivedDate属性。

我天真的做法是:持久性堆栈订阅核心数据通知(但不确定是哪个),在保存时检查受影响的Path对象,并强制执行归档规则。

你会做什么来实现“级联”档案?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-13 17:45:08

我认为您可以简单地在您的setArchivedDate类中重写Project。在那里,您可以检查所有路径的状态并相应地存档,如下所示

代码语言:javascript
复制
-(void)setArchivedDate:(NSDate*)newValue {
   [self willChangeValueForKey:@"archivedDate"];
   [self setPrimitiveValue:newValue forKey:"archivedDate"];
   [self didChangeValueForKey:@"archivedDate"];

   for (Path *path in self.paths) {
      NSSet *activeProjects = [path.projects filteredSetUsingPredicate: 
         [NSPredicate predicateWithFormat:@"archivedDate = nil"]];
      if (!activeProjects.count) {
         path.archivedDate = newValue;
      }
   }
}

PS:如果您正在使用Swift,这是用didSet完成的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26911223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档