Tôi mới làm quen với dữ liệu cốt lõi do đó tôi có một vài câu hỏi. Tôi sẽ hỏi hai sốChèn dữ liệu lõi và tìm nạp nhiều thực thể mối quan hệ
1) Tôi có hai thực thể tên là Team và TeamMembers. Họ có nhiều mối quan hệ, tức là một nhóm có thể có nhiều thành viên. Trước tiên, hãy xem sơ đồ sau và tệp .h của các mô hình đó và cho tôi biết liệu tôi đã thực hiện đúng mối quan hệ nhiều giữa Nhóm và TeamMembers (Tôi có cảm giác rằng tôi đã tạo ra mối quan hệ ngược lại).
Teams.h
#import <CoreData/CoreData.h>
@class TeamMembers;
@interface Teams : NSManagedObject
{
}
@property (nonatomic, retain) NSString * team_name;
@property (nonatomic, retain) NSString * color;
@property (nonatomic, retain) NSString * points;
@property (nonatomic, retain) TeamMembers * members;
@end
TeamMembers.h
#import <CoreData/CoreData.h>
@class Teams;
@interface TeamMembers : NSManagedObject
{
}
@property (nonatomic, retain) NSString * member_name;
@property (nonatomic, retain) NSSet* teams;
@end
@interface TeamMembers (CoreDataGeneratedAccessors)
- (void)addTeamsObject:(Teams *)value;
- (void)removeTeamsObject:(Teams *)value;
- (void)addTeams:(NSSet *)value;
- (void)removeTeams:(NSSet *)value;
@end
2) Xin vui lòng tôi cần mẫu mã cho chèn Đội bóng sau đó chèn thành viên trong nhóm của mình. Ngoài ra Làm thế nào để lấy các thành viên trong nhóm của nhóm cụ thể.
EDITED Tôi đang sử dụng đoạn mã sau đây để chèn vào các nhóm và thành viên trong nhóm thực thể nhưng nó không được trả lại tất cả thành viên trong nhóm trong NSSet. Chỉ trả lại một thành viên trong nhóm kết quả là
self.context = [del managedObjectContext];
Teams *teamobj = [NSEntityDescription
insertNewObjectForEntityForName:@"Teams"
inManagedObjectContext:context];
teamobj.team_name = teamname.text;
teamobj.color = [NSString stringWithFormat:@"%d", color];
teamobj.points = [NSString stringWithFormat:@"%d", 0];
for(UITextField *view in self.scrollview.subviews)
{
if([view isKindOfClass:[UITextField class]])
{
if ([view tag] == 99) {
if (![view.text isEqualToString:@""]) {
noone = YES;
TeamMembers *teammember = [NSEntityDescription
insertNewObjectForEntityForName:@"TeamMembers"
inManagedObjectContext:context];
teammember.member_name = view.text;
teammember.teams = teamobj;
[teamobj addMembersObject:teammember];
}
}
}
}
if (![context save:&error]) {
NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Failure" message:@"Unable to save team at the moment." delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil];
[alert show];
[alert release];
}
Cảm ơn bạn đã trả lời.Bạn có thể vui lòng cho thấy một ví dụ về chèn trong TeamMembers cho đội đặc biệt –
Nó cũng là quy ước để đặt tên cho các thực thể của bạn như là đối tượng số ít không số nhiều; vì vậy 'Nhóm' và 'TeamMember', không phải 'Đội' và 'Đội trưởng'. –
Cảm ơn bạn đã hiển thị mã mẫu. bạn có thể vui lòng cho biết cách thêm NSSet của các thành viên trong nhóm vào một nhóm không? –