Три20 TTTableViewController с несколькими моделями?Это возможно? - PullRequest
0 голосов
/ 29 марта 2011

Возможно, я собираюсь в ближайшие несколько недель создать TTTableViewController, где данные, предоставленные моделью, будут поступать из нескольких источников.Часть этого будет получена из FQL-запроса Facebook, а другая - с сайта drupal через сервисный модуль.Я пытаюсь найти лучший способ справиться с этим требованием при использовании модели TTURLRequest.

У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 01 апреля 2011

Зависит от того, как будут представлены источники данных.Придется ли таблице объединять результаты или вы будете переключаться между двумя источниками?Если он переворачивается, вам просто нужно переназначить источник данных (или, если вы хотите сохранить тот же источник данных, переназначить модель источника данных).

Для одного из моих проектов я представил слияние двух разных моделей.Я создал модель, которая состояла из массива моделей.Затем мне пришлось реализовать каждый из подходящих методов модели в терминах массива моделей.Например:

- (BOOL)isLoaded {
    BOOL isLoaded = YES;
    for (TTModel *model in self.models) {
        isLoaded &= model.isLoaded;
    }
    return isLoaded;
}

- (void)load:(TTURLRequestCachePolicy)cachePolicy more:(BOOL)more {
    for (TTModel *model in self.models) {
        [model load:cachePolicy more:more];
    }
}

etc etc

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

...