I'd like to get an array of the attributes for my NSManagedObject
so I can use KVO to export them. I can create an array manually and then iterate through it, however, I'd like to get this list automatically, then iterate.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
An NSManagedObject has an entity associated with it. Use NSEntityDescription's -attributesByName
and -relationshipsByName
. You'll get a dictionary back from each of those methods. Just ask the dicts for their -allKeys
.
回答2:
Thanks Joshua. Here's code that I used in case any one would like to see a hard example:
NSString *entityName = NSStringFromClass([myEntity class]);
NSEntityDescription *entityDescription = [self entityDescriptionWithEntityName:entityName];
NSDictionary *attributes = [entityDescription attributesByName];
NSArray *attributeNames = attributes.allKeys;