在我的Lion应用程序中,我有这个数据模型:

subitems里面的关系Item 是有序的.
的Xcode 4.1(建4B110)为我创建的文件Item.h,Item.m,SubItem.h和SubItem.h.
以下是内容(自动生成)Item.h:
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@class SubItem;
@interface Item : NSManagedObject {
@private
}
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSOrderedSet *subitems;
@end
@interface Item (CoreDataGeneratedAccessors)
- (void)insertObject:(SubItem *)value inSubitemsAtIndex:(NSUInteger)idx;
- (void)removeObjectFromSubitemsAtIndex:(NSUInteger)idx;
- (void)insertSubitems:(NSArray *)value atIndexes:(NSIndexSet *)indexes;
- (void)removeSubitemsAtIndexes:(NSIndexSet *)indexes;
- (void)replaceObjectInSubitemsAtIndex:(NSUInteger)idx withObject:(SubItem *)value;
- (void)replaceSubitemsAtIndexes:(NSIndexSet *)indexes withSubitems:(NSArray *)values;
- (void)addSubitemsObject:(SubItem *)value;
- (void)removeSubitemsObject:(SubItem *)value;
- (void)addSubitems:(NSOrderedSet *)values;
- …Run Code Online (Sandbox Code Playgroud) 我已经设置了一个简单的核心数据模式,其中项目对象被添加到列表对象中.生成类后,核心数据生成了标准访问器,包括将项添加到列表中的几种方法(list.addItemsObjects和list.addItems :).
我还想为每个项目添加一个'dateAdded'NSDate.现在,我可以在每次创建对象时手动设置它,因为核心数据将为我提供item.dateAdded访问器.但实际上,我更希望这是由列表本身处理的,因为实现永远不会改变.所以每次调用list.AddItemObject时,我都希望它同时设置item的dateAdded属性.我想我也需要在反向中做同样的事情,以便item.setList也设置dateAdded.
我不知道该怎么做.我是否应该尝试重新定义现有的核心数据生成的访问器?如果是这样,我该怎么做(有人在我的自定义代码中调用原始实现,以便处理反向关系,以及任何其他核心数据必需品)?或者有更好的方法来定制这些方法吗?