我正在尝试在 Roar::Decorator 中呈现纯 XML 输出。由于某种原因,无法获得未转义的输出。
我有这堂课:
class GetShopProductsRequest < OpenStruct
def data_filter
xml_s = []
xml_s << "<Filter>"
xml_s << " <FilterName>#{self.filter_name}</FilterName>"
xml_s << " <FilterValues>"
xml_s << " <FilterValue>#{self.filter_value}</FilterValue>"
xml_s << " </FilterValues>"
xml_s << "</Filter>"
xml_s.join("\n")
end
end
和以下代表:
class GetShopProductsRequestRepresenter < RequestRepresenter
property :data_filter, as: :DataFilter
end
继承自Roar::Decorator
并包括Roar::XML
但是,当我创建我的代表实例时
GetShopProductsRequestRepresenter.new(GetShopProductsRequest.new(:filter_value => 123, :filter_name => "test"))
并创建 XML 输出.to_xml
,输出为
<DataFilter><Filter>
<FilterName>bla</FilterName>
<FilterValues>
<FilterValue>test</FilterValue>
</FilterValues>
</Filter></DataFilter>
我尝试html_safe
在代码中的多个位置使用,但没有改变结果。