Я сделал это, но в некотором роде уродливо.Но это работает, и мне нужно было заставить его работать быстро ...
Поскольку я хотел продолжать использовать мой FetchedResultsController и всю архитектуру, которую я создал, чтобы подключить его к моим контроллерам представления, это казалосьлегче иметь отдельные объекты для моих недель и месяцев.
Я знаю, что это противоречит принципам хранения данных, поскольку позволяет хранить данные, которые можно вычислить, но это было относительно легко сделать.
У меня естьУправляемый объект UsageDay, составляющий большинство данных.Затем у меня есть объект UsageWeek и UsageMonth.
Когда я сохраняю объект UsageDay, начиная с его даты ivar, я вычисляю его weekOfYear и monthOfYear (и year) как для UsageWeek, так и для UsageMonth.
UsageWeek содержит: weekOfYear, year и NSSet объектов UsageDay, которые он содержит UsageMonth содержит: monthOfYear, year и NSSet объектов UsageDay, которые он содержит.
Я могу легко получитьсписок всех UsageWeek, который имеет набор из 7 объектов UsageDay - для которых я вызываю [useWeek valueForKeyPath: @ "creationDaySet. @ sum.value"] - что дает мой итог.Работает нормально.
Не стесняйтесь открыто критиковать этот дизайн - я ожидаю этого !!!