Управление датами в заголовках разделов с помощью основных данных - PullRequest
0 голосов
/ 15 июня 2011

У меня есть концептуальная проблема с использованием основных данных. Мое приложение перечисляет события по заголовкам в главном табличном представлении, затем переходит к табличному представлению, которое является уникальным для данного события. Здесь предполагается отображать в заголовках разделов табличного представления дату события, список дат, расширяющих диапазон (требует расчета), или список уникальных дат.

Я организовал это в модели с 3 объектами. Событие и дата имеют отношение один к одному. Дата к меню имеет отношение один ко многим. Меню содержит данные для событий, которые имеют уникальные даты, Даты содержат события, которые имеют либо дату начала, либо в некоторых случаях, когда это диапазон, и дату окончания.

Хорошо, если все ясно, мой вопрос: как мне создать список заголовков разделов, уникальных для события? Имейте в виду, что NSFetchedResultsController предоставляет возможность только возвращать имя раздела из управляемого объекта. Я думаю, это то, что меня бросает.

Нужно ли извлекать данные, уникальные для события, и затем использовать FRC для создания массивов, чтобы заполнять заголовки разделов и жить с таблицей, которая не управляется? Или есть более разумный способ?

1 Ответ

1 голос
/ 15 июня 2011

Я не совсем понимаю вашу модель, но я думаю, что она выглядит примерно так:

Event{
  name:string
  date<-->Date.event
}

Date{
  event<-->Event.date
  menus<-->>Menu.date
}

Menu{
  date<<-->Date.menus
}

Если это не так, вы можете попробовать отредактировать вопрос с моделью данных в этом формате:может быть лучше понято.(если вы не можете редактировать, просто сложите формат в комментарий, и я добавлю его. В качестве альтернативы, отправьте его мне по электронной почте.)

Мне не ясно, какие данные вы хотите в своем Event заголовков разделов таблицы.Разделы предназначены для группировки управляемых объектов на основе некоторого атрибута этих объектов.Каноническим примером будет список контактов Contact.app.Контакты сгруппированы по алфавитному значению первой буквы фамилии.

Однажды распространенная ошибка - думать о таблице разделов как о представлении иерархических объектов с заголовками разделов, представляющими вышестоящие объекты, и строками, представляющими низшие, например, у вас есть модель для имитации файловой системы, поэтому у вас есть объект Directoryи File сущность.Вы пытаетесь установить для заголовков разделов имя Directory, а для строк - имена связанных сущностей File.Это не сработало бы гладко и не совпало бы с грамматикой интерфейса, которую пользователь изучил для заголовков разделов.Вместо этого у вас должна быть иерархия табличных представлений с таблицей, показывающей все Directory объекты, а затем второе табличное представление, показывающее все File объекты, связанные с выбранным `объектом Directory.

Итак, если вы хотите, чтобы заголовки разделов происходили из какого-либо объекта, кроме Event, вы, вероятно, подходите к проблеме с неправильной точки зрения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...