【发布时间】:2010-04-04 07:51:39
【问题描述】:
在previous question 中,我正在寻找一种替代方法来修改“无日期”如何存储在我的 NSManagedObject 子类的日期属性中。以前,当用户未指定日期时,我已将 nil 分配给该属性。为了解决使用 NSFetchedResultsController 时的排序问题,我决定在用户未指定日期时将 [NSDate distanceFuture] 指定给日期属性。但是,鉴于这个应用程序已经在野外,我需要更新 Core Data 存储,以便将任何现有的 nil 日期值更改为 [NSDate distinctFuture]。
进行此更改的最佳方法是什么?首先想到的是遍历存储在数组中的所有对象并更改找到的任何 nil 值。这可以通过检查指示是否已执行此升级的用户默认键来限制为一次性事件。有没有办法可以用 Core Data 版本控制来做到这一点?或者其他不涉及我编写一次性代码的方法?
【问题讨论】: