目前,我正在創建一個使用核心數據作爲本地存儲的應用程序。我對我的應用程序的兩個實體有問題:藝術家和專輯。一位藝術家可以製作很多專輯,而一張專輯也可以由多位藝術家組成。iOS核心數據addRelationshipObject和addRelationship之間的多對多關係差異?
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@class Albums;
@interface Artists : NSManagedObject
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSSet *toAlbums;
@end
@interface Artists (CoreDataGeneratedAccessors)
- (void)addToAlbumsObject:(Albums *)value;
- (void)removeToAlbumsObject:(Albums *)value;
- (void)addToAlbums:(NSSet *)values;
- (void)removeToAlbums:(NSSet *)values;
@end
是什麼addToAlbumsObject之間的區別:(相冊*)值& addToAlbums:(NSSet中*)值?
如果我想向藝術家和專輯插入一些信息,例如藝術家「Jame」和「Jonh」生成2個專輯「天空專輯」和「明星專輯」和「天空專輯」。這是我做的代碼。
NSManagedObjectContext *context = [self managedObjectContext];
Artists *artists = [NSEntityDescription insertNewObjectForEntityForName:@"Artists" inManagedObjectContext:context];
artists.name = @"Jame";
Albums *albums = [NSEntityDescription insertNewObjectForEntityForName:@"Albums" inManagedObjectContext:context];
albums.name = @"sky album";
接下來我應該怎麼做才能存儲我想要的信息。 在此先感謝您的所有意見!
非常感謝您的回答。但是,我需要添加一個反向,如 [anAlbum addToArtistsObject:anArtist]; – Sunly
@ user2756388:否。如果'toAlbums'和'toArtists'被定義爲*反關係*,那麼設置一個方向就足夠了,並自動設置另一個方向。 –
我明白了。非常感謝您的有用答案,Martin R. – Sunly