1

我需要一种方法来处理NSManagedObject子类中的动态属性。我现在要做的是检查一个对象的date(NSDate 类)属性是否通过[NSDate now]. 如果该日期是属性,则该对象被标记为overdue

所以每当我需要显示一个对象是否过期时,我都需要进行上面的比较。所以这个属性可以切换过期和不过期的状态。一直做这个检查似乎有点不对劲。有没有办法自动做到这一点?IE。每次我从数据库中获取对象时,Core Data 都会为我执行上述方法吗?

4

2 回答 2

0

您不应该尝试保持过期状态,因为它取决于一个始终在变化的变量。如果需要根据下一个过期对象做某事,只需取出未过期的数据,按日期排序,找到下一个过期的即可。然后,当记录过期时,您可以执行 dispatch_after 来执行您的应用程序所做的任何事情。

于 2012-08-17T14:31:39.807 回答
0

您可以通过使用 NSManagedObject 子类和瞬态属性来实现您正在寻找的东西。

您想要的动态属性可以通过制作“瞬态”属性来实现。您可以通过检查瞬态选项来使属性瞬态。瞬态属性不会持久保存到本地存储中。

使用新建文件向导为您的实体创建一个 NSManagedObject 子类,它位于“核心数据”类别下。

创建类时,只需为您的动态属性创建一个 getter 方法即可返回您想要的内容。

现在您可以在获取请求期间正常使用它。

于 2012-08-17T14:57:19.803 回答