elementToPropertyMapping在RestKit
我正在学习RestKit。我遇到了它提供的elementToPropertyMapping功能。我想知道我是否可以将此映射用于xml文档?还是只为JSON?elementToPropertyMapping在RestKit
在tutorial我发现他们提供了一个JSON提要。所以我很困惑。还有没有任何其他的XML解析器提供这种映射功能的IOS。 感谢
您发现的教程已过时。 elementToPropertyMappings不再使用。您可以使用普通的objective-c类并使用RKObjectMapping将数据映射到它们,而不是从RKObject或RKManagedObject继承。
你可以找到新的文件here。
但是,您可以对XML文档使用RestKit的对象映射。解析器应该检测mimetype并使用xml解析器而不是json;如果没有,你可以明确告诉它根据链接文档使用xml。
这是一个非常好的xml parser comparison for iOS
一般来说,你应该能够做这种映射与RestKit。这取决于你的XML有多复杂。如果它依赖命名空间和外来技术,RestKit可能会很困难。
对于普通的xml,Restkit工作得很好。一些tutorials/examples,最后是RestKit API docs。寻找RKXMLParserLibXML。
事实上,gitHub上的教程已过时,但即使是新教程也没有提及如何有效地使用RestKit查询XML文件以进行正确的映射,这对于新手来说非常混乱我。
作为一个快速参考,我会尽量向你展示它的工作原理与XML的方式:
说你有这样的回应:
<?xml version="1.0" encoding="UTF-8"?>
<users type="array">
<user>
<id>1</id>
<name>Roberto</name>
<company>Apple</company>
</user>
<user>
<id>2</id>
<name>Carlos</name>
<company>Adobe</company>
</user>
</users>
如果你要映射的一类用户在Objective-C项目中,您必须特别注意keyPath,在这种情况下:“用户”< - 第一个标记,“用户”<第二个标记以及要映射的“Class”。
对于此,可以使用:
[[RKObjectManager sharedManager].mappingProvider setMapping:objectMapping forKeyPath:@"users.user"];
对于其余部分,如果使用教程的第一部分这个链路上是确定(通过实施例的对象映射):
对不起,它移动了。更新了链接。 – 2011-08-28 19:04:02
链接指向描述JSON对象映射的文档,而不是XML映射:( – 2012-01-20 09:44:23
映射的定义方式相同,RestKit处理它在内部接收XML而非JSON的事实。 – 2012-01-20 21:40:15