Доступ к имени сущности Core Data из NSArrayController -arrangedObjects
Учитывая NSArrayController
"objController", который связан с moc в IB, не должен работать следующим образом? И, учитывая, что это, похоже, не работает, как мне найти имя сущности из моего NSArrayController
?
for (NSManagedObject *thisObj in [objController arrangedObjects])
{
NSEntityDescription *description = [thisObj entity];
NSString *entityName = [description name];
// do something with entityName...
NSString *entityAttributeValue = [thisObj valueForKey:@"attributeKey"];
// do something with entityAttributeValue...
}
"ObjController" имеет IBOutlet-ed и установлен в режим "Entity Name", с именем объекта, установленным в объект, определенный в модели. Эта сущность имеет дочерние сущности (и, следовательно, причина, по которой я хотел бы получить доступ к ее имени описания, так как NSArrayController
может хранить много разных типов дочерних объектов), но присутствие дочерних объектов в любом случае не имеет значения.
... в отладчике это выглядит как "описание" является действительным NSEntityDescription
объект, но "entityName" получает значение _PFEncodedString
объект, без содержания. Тем не менее, "entityAttributeValue" просто отлично, с правильным значением, хранящимся в Core Data.
Один из способов обойти это, я полагаю, состоит в том, чтобы индивидуально классифицировать все мои сущности CD, а затем использовать -isKindOfClass
чтобы получить информацию, которая мне нужна.
Есть идеи?
1 ответ
_PFEncodedString
(частный) конкретный подкласс NSString
и поэтому может быть использован как любой другой NSString
,