Я использую Magical Record для базы данных с Xcode. У меня есть два объекта, один из них называется «задача», а другой - «комментарий», я хочу установить отношения, чтобы одна задача имела массив комментариев при запросе задачи, возможно ли, я новичок в волшебная запись, надеюсь, я поставил проблему понятной. Благодарю.Волшебная запись 1 для многих отношений цель c
редактировать: Эй, спасибо за вашу помощь, я использовал этот код, чтобы поместить комментарии в задаче:
NSManagedObjectContext *localContext = [NSManagedObjectContext MR_defaultContext];
TarefaMR *task = [TarefaMR MR_createInContext:localContext]; task.
//...
for (NSDictionary *comment in [tarefa objectForKey:@"comments"]) { NSManagedObjectContext *localContext3 = [NSManagedObjectContext MR_defaultContext];
ComentarioMR *comment = [ComentarioMR MR_createInContext:localContext3];
[localContext3 MR_saveToPersistentStoreAndWait];
[task addComentariosObject:comment]; }
[localContext MR_saveToPersistentStoreAndWait];
но теперь я пытаюсь получить доступ к нему, и я не могу показаться, чтобы получить данные из комментарии задачи,
код, который я использовал:
for (TarefaMR *tarefa in [TarefaMR MR_findAll];) {
NSLog(@"tarefa.comentarios %@",tarefa.comentarios); }
Я получаю
tarefa.comentarios Ошибка связи «comentarios» с управляемым объектом : comentarios =;
Я уже пробовал цикл tarefa.comentarios в a, но, похоже, ничего не получил, если я запрашиваю базу данных комментариев, объекты там.
Тогда для Я пытался использовать:
for (ComentarioMR *comment in tarefa.comentarios) {
NSLog(@"comment listHeader %@", comment.listHeader);
NSLog(@"comment listText %@", comment.listText); }
, как я могу получить комментарии задачи?
Еще одна вещь: отношения возвращают NSS по умолчанию. Если вы выберете опцию «заказать», вместо нее вы получите NSOrderedSet. Никогда не NSArray. –
thks, теперь у меня есть объект задачи с nset комментариев, теперь я ищу, чтобы узнать, как создавать комментарии, а затем добавить комментарии к задаче, уже есть этот код: NSManagedObjectContext * localContext = [NSManagedObjectContext MR_contextForCurrentThread] ; TarefaMR * task = [TarefaMR MR_createInContext: localContext]; task.nome = @ "sdf" task.comentarios = [localContext MR_saveNestedContexts]; – edounl
Вам это не нужно. Если вы добавляете комментарии к основному потоку, просто используйте [NSManagedObjectContext MR_defaultContext], в противном случае [NSManagedObjectContext MR_context]. Предположим, вы сохранили один из этих двух переменных в переменной «context». Вы бы сделали следующее: Задача * Задача = [Задача MR_createInContext: context]; ... настройка задачи Комментарий * комментарий = [Комментарий MR_createInContext: context]; ...задать атрибуты комментария comment.task = task.' –