Базовые данные - вопрос об управляемом объекте - PullRequest
0 голосов
/ 19 декабря 2010

У меня есть 2 основных вопроса относительно базовых данных;

  1. Что такое управляемый объект - эквивалентен ли он одному экземпляру класса. Например, если существует объект с именем Shape, который имеет такие атрибуты, как отсутствие сторон и цвета, и если в таблице отображается 5 записей, значит ли это, что существует 5 управляемых объектов, каждый из которых имеет атрибуты no. сторон и цвета. Я немного смущен этой основной концепцией.

  2. Какова точная связь между Fetched Results Controller (FRC) и табличным представлением? Я знаю методы делегатов, но как именно табличное представление влияет / связано с FRC?

Любые базовые примеры будут действительно полезны. Спасибо.

Ответы [ 2 ]

0 голосов
/ 29 января 2011

Q1.Да, есть 5 управляемых объектов, доступных для вас.Вы можете поместить все пять в массив, если хотите.Управляемый объект - это просто термин, означающий, что у вас есть код для управления действиями «Вставить», «Изменить» и «Удалить» в базе данных - другими словами, некоторый код управляет им в течение всего его жизненного цикла.Вы получаете это через FRC, FRC ^ выбирает ^ экземпляры объекта из базы данных и позволяет вашему коду ^ контролировать ^ что происходит с ^ результатом ^.Отсюда и название.

0 голосов
/ 19 декабря 2010

Q1. Управляемый объект - это представление некоторой сущности, которая была сохранена приложением. Это просто общая абстракция вдали от фактического постоянного типа. Таким образом, вы правы, говоря, что управляемый объект будет иметь те же ключи / свойства, что и конкретный тип. Поскольку класс NSManagedbject реализует шаблон кодирования значения ключа, вы можете запросить его ключ / значения во время выполнения ...

- (id)valueForKey:(NSString *)key

Для полной документации по NSManagedObject см. здесь

Q2. Выбранный контроллер результатов - это то, чем является ваш UIViewController для вашего UIView. Он содержит логику, которая контролирует постоянство вашего табличного представления. Его единственная цель в жизни - не допускать логику обработки базы данных в свой UITableView. Это достигается за счет того, что вы можете определить поведение, которое вы хотите выполнить в контексте вашего UITableView. Под этим я подразумеваю, что его делегат предоставляет методы с сигнатурами, которые явно подразумевают влияние на UITableView.

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