Для многих отношений в основных данных - PullRequest
0 голосов
/ 13 мая 2011

Это мой GeneratedCode для данных Core, автоматически сгенерированный xCode Editor.

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@class Building, Category, City, District, Image, LatitudeLongitude, OpeningHour, Promotion, Rating, Review, URL;

@interface Business : NSManagedObject {
@private
}
@property (nonatomic, retain) NSString * Website;
@property (nonatomic, retain) NSString * Email;
@property (nonatomic, retain) NSString * Street;
@property (nonatomic, retain) NSString * InBuildingAddress;
@property (nonatomic, retain) NSString * Phone;
@property (nonatomic, retain) NSString * Title;
@property (nonatomic, retain) NSString * Zip;
@property (nonatomic, retain) NSNumber * Price;
@property (nonatomic, retain) NSSet* Promotions;
@property (nonatomic, retain) Building * Building;
@property (nonatomic, retain) NSSet* Categories;
@property (nonatomic, retain) LatitudeLongitude * LatitudeLongitude;
@property (nonatomic, retain) NSSet* Images;
@property (nonatomic, retain) OpeningHour * OpeningHour;
@property (nonatomic, retain) NSSet* Reviews;
@property (nonatomic, retain) NSSet* URLs;
@property (nonatomic, retain) Rating * Rating;
@property (nonatomic, retain) NSSet* Districts;
@property (nonatomic, retain) City * City;

// Я добавил эти 3 строки, почему не часть автоматически сгенерированного кода?

- (void)addDistrictsObject:(District *)value;
- (void)addCategoriesObject:(Category *)value;
- (void)addReviewsObject:(Review *)value;

@end

Скажите, что я хочу "очистить" все Обзоры и изображения.

Будет ли заниматься самообслуживанием. Обзоры = ноль поможет?

Я знаю, что выполнение self.LatitudeLongitude = nil удалит связь между self и LatitutudeLongitude.

1 Ответ

1 голос
/ 13 мая 2011

РЕДАКТИРОВАТЬ - Не уверен, если вы имеете в виду «очистить», как при удалении.Мой ответ ниже предполагает, что вы хотите, чтобы объекты были удалены из контекста;не просто разрыв отношения между NSManagedObjects

Я не верю, что

self.Reviews = nil;

фактически удалит ваши объекты обзора для контекста управляемого объекта.Это отправит сообщение о выпуске каждому, но чтобы удалить их из контекста, вы должны вызвать

[aContext deleteObject:reviewObj];

для каждого в наборе.Если вы должны были удалить один из ваших бизнес-объектов (используя «deleteObject», как показано выше) и если для ваших правил удаления отношений установлено значение «Каскад», то я считаю, что это вызовет все объекты Review, City и т. Д. ...принадлежащий этому бизнес-объекту, который будет удален автоматически, но это единственный известный мне другой способ, который приведет к удалению NSManagedObjects.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...