セッション、ユーザー、テストの3つのエンティティがあります。セッションには0〜多数のユーザーがあり、ユーザーは0〜6のテストを実行できます。(私は0と言いますが、実際のアプリケーションでは常に少なくとも1つ、セッションには少なくとも1人のユーザー、ユーザーには少なくとも1つのテストが必要です。ただし、空の開始を表すには0と言います。)すべてのエンティティには固有のデータがあります。属性も。ユーザーには名前があり、セッションには名前があり、テストにはユーザーが入力する6つの値があります。しかし、私の問題は関係にあります。
複数のユーザーを設定して1つのセッションに追加するにはどうすればよいですか(1人のユーザーの複数のテストにも同じことが言えます)。
コンテンツを正しい方法で表示するにはどうすればよいですか?複数のユーザーがいて、これらのユーザーが複数のテストを完了したセッションを表示するにはどうすればよいですか?
これが問題1に関するこれまでの私のコードです。
Session *session = [NSEntityDescription insertNewObjectForEntityForName:@"Session"
inManagedObjectContext:context];
session.name = @"Session 1";
User *users = [NSEntityDescription insertNewObjectForEntityForName:@"User"
inManagedObjectContext:context];
users.age = [NSNumber numberWithInt:28];
users.session = session;
//session.user = users;
[sessie addUserObject:users];
問題2に関して:セッションをログに記録できますが、セッションからユーザーをログに記録できません。
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Session"
inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
for (Session *info in fetchedObjects) {
NSLog(@"Name of session: %@", info.name);
NSLog(@"Having problems with this: %@",info.user);
//User *details = info.user;
//NSLog(@"User: %@", details.age);
}