使用Rails和ActiveResource我得到了第三方API的XML響應形式的非Rails風格。我喜歡映射的對象基本上被包裝在prestahop元素中。我應該重寫什麼來擺脫該元素來正確映射對象?非響應式格式的XML響應如何正確解析ActiveResource?
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<order>
<id></id>
使用Rails和ActiveResource我得到了第三方API的XML響應形式的非Rails風格。我喜歡映射的對象基本上被包裝在prestahop元素中。我應該重寫什麼來擺脫該元素來正確映射對象?非響應式格式的XML響應如何正確解析ActiveResource?
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<order>
<id></id>
您應該使用自定義格式化程序來滿足您的需求,像這樣的東西可能是很好的解決方案。
class PrestaXMLFormatter
include ActiveResource::Formats::XmlFormat
def decode(xml)
ActiveResource::Formats::XmlFormat.decode(xml)['prestashop']
end
end
class Order < ActiveResource::Base
self.format = PrestaXMLFormatter.new
end