如果我创建NSManagedObject子类的子类,我会在实现文件Business.m(例如)为什么自动创建NSManagedObject子类没有“适当”头?
上看到这些函数。在头文件Business.h中没有声明这些函数。我必须亲自添加
- (void)addDistrictsObject:(District *)value;
- (void)addCategoriesObject:(Category *)value;
- (void)addReviewsObject:(Review *)value;
我想知道为什么我必须手动添加这些声明?为什么不自动当我试图生成子类?
下面是顺便功能:
- (void)addPromotionsObject:(Promotion *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Promotions"] addObject:value];
[self didChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removePromotionsObject:(Promotion *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Promotions"] removeObject:value];
[self didChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addPromotions:(NSSet *)value {
[self willChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Promotions"] unionSet:value];
[self didChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removePromotions:(NSSet *)value {
[self willChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Promotions"] minusSet:value];
[self didChangeValueForKey:@"Promotions" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
- (void)addCategoriesObject:(Category *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Categories" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Categories"] addObject:value];
[self didChangeValueForKey:@"Categories" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removeCategoriesObject:(Category *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Categories" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Categories"] removeObject:value];
[self didChangeValueForKey:@"Categories" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addCategories:(NSSet *)value {
[self willChangeValueForKey:@"Categories" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Categories"] unionSet:value];
[self didChangeValueForKey:@"Categories" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removeCategories:(NSSet *)value {
[self willChangeValueForKey:@"Categories" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Categories"] minusSet:value];
[self didChangeValueForKey:@"Categories" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
- (void)addImagesObject:(Image *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Images" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Images"] addObject:value];
[self didChangeValueForKey:@"Images" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removeImagesObject:(Image *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Images" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Images"] removeObject:value];
[self didChangeValueForKey:@"Images" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addImages:(NSSet *)value {
[self willChangeValueForKey:@"Images" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Images"] unionSet:value];
[self didChangeValueForKey:@"Images" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removeImages:(NSSet *)value {
[self willChangeValueForKey:@"Images" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Images"] minusSet:value];
[self didChangeValueForKey:@"Images" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
- (void)addReviewsObject:(Review *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Reviews"] addObject:value];
[self didChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removeReviewsObject:(Review *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Reviews"] removeObject:value];
[self didChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addReviews:(NSSet *)value {
[self willChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Reviews"] unionSet:value];
[self didChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removeReviews:(NSSet *)value {
[self willChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Reviews"] minusSet:value];
[self didChangeValueForKey:@"Reviews" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
- (void)addURLsObject:(URL *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"URLs" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"URLs"] addObject:value];
[self didChangeValueForKey:@"URLs" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removeURLsObject:(URL *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"URLs" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"URLs"] removeObject:value];
[self didChangeValueForKey:@"URLs" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addURLs:(NSSet *)value {
[self willChangeValueForKey:@"URLs" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"URLs"] unionSet:value];
[self didChangeValueForKey:@"URLs" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removeURLs:(NSSet *)value {
[self willChangeValueForKey:@"URLs" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"URLs"] minusSet:value];
[self didChangeValueForKey:@"URLs" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
- (void)addDistrictsObject:(District *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Districts" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Districts"] addObject:value];
[self didChangeValueForKey:@"Districts" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)removeDistrictsObject:(District *)value {
NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1];
[self willChangeValueForKey:@"Districts" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[[self primitiveValueForKey:@"Districts"] removeObject:value];
[self didChangeValueForKey:@"Districts" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
[changedObjects release];
}
- (void)addDistricts:(NSSet *)value {
[self willChangeValueForKey:@"Districts" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Districts"] unionSet:value];
[self didChangeValueForKey:@"Districts" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value];
}
- (void)removeDistricts:(NSSet *)value {
[self willChangeValueForKey:@"Districts" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
[[self primitiveValueForKey:@"Districts"] minusSet:value];
[self didChangeValueForKey:@"Districts" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value];
}
好问题,期待看到答案。我自己也想知道。总是认为这是代码模板上的过度使用。 – Damien 2011-05-16 10:46:56
bugreport.apple.com – ImHuntingWabbits 2011-07-29 23:45:56