Например:
У меня есть две сущности с именами Project
и Todo
, где у проекта есть много задач (отношение ко многим), и у каждой задачи есть один проект (см. Изображение).
В моем ViewController.h
у меня есть что-то вроде:
...
NSArray *projectArray;
NSArray *todosArray;
@property (nonatomic,retain) NSArray *projectArray;
@property (nonatomic,retain) NSArray *todosArray;
...
В моем ViewController.m
у меня есть что-то вроде:
...
@synthesize projectArray,todosArray;
...
self.projectArray = [self fetchRequestForAllProjects];
...
У пользователя есть интерфейс, где он может выбирать между всеми различными проектами.Как только пользователь выбирает проект, должны быть установлены соответствующие объекты todo для загрузки и представления.
Вопрос 1: Как загрузить набор задач вtodosArray
лучшим образом?
Я делал это так (также в ViewController.m
):
...
// after deselecting a project entry I reset the todosArray
self.todosArray = nil;
...
//when the user selects a new project I reset the todosArray like this:
self.todosArray = [selectedProject.todos allObjects];
...
Но каким-то образом приложение очень редко вылетаетпоследняя строка кода.Есть ли проблемы с моим кодом?
Вопрос 2 : Было бы лучше использовать другой запрос на выборку для объектов todos?
ОБНОВЛЕНИЕ:
Я использую todosArray
в различных методах ViewController.m
:
(а) для получения количества объектов, (б) представления каждой записи задач в строке табличного представления и(c) для идентификации выбранной записи todo (выбор строки броска)