我有一个这样的 XML:
<rss>
<channel>
<item>
<title>something</title>
<description>...</description>
<category>cooking</category>
<category>housing</category>
</item>
<item>
...
</item>
...
</channel>
</rss>
它是一个 RSS 提要,在频道内有一组项目,包含许多标签/属性(标题、内容、...),以及类别标签的集合。
我可以用 RestKit 解析它的频道/项目/标题/内容部分:
RKManagedObjectMapping *itemMapping = [RKManagedObjectMapping mappingForClass:[Item class] inManagedObjectStore:objectStore];
[itemMapping mapKeyPath:@"title" toAttribute:@"title"];
[itemMapping mapKeyPath:@"description" toAttribute:@"content"];
RKManagedObjectMapping *channelMapping = [RKManagedObjectMapping mappingForClass:[Channel class] inManagedObjectStore:objectStore];
[channelMapping mapKeyPath:@"item" toRelationship:@"items" withMapping:itemMapping];
[manager.mappingProvider setMapping:channelMapping forKeyPath:@"rss.channel"];
但是我对映射类别感到迷茫......我尝试过这样的事情:
RKManagedObjectMapping *categoryMapping = [RKManagedObjectMapping mappingForClass:[Category class] inManagedObjectStore:objectStore];
[itemMapping mapKeyPath:@"category" toRelationship:@"categories" withMapping:CategoryMapping]
但不知何故,标签内的文本内容没有映射到类别类中的我的属性“名称”。当然,我在这里的代码中没有使用这个“名称”,因为我不知道该放在哪里。
如何使用 RestKit 解析纯文本 XML 标记?有没有类似的东西:
[categoryMapping mapKeyPath:@".text" toAttribute:@"name"];
?
(不能按原样工作)