在一个ROXML对象数组上调用to_xml会导致空集合

时间:2010-05-21 23:16:45

标签: ruby-on-rails xml

我有一个ROXML对象,如下所示:

class Activity
  include ROXML
  xml_accessor :id
end

如果我有一个这些对象的数组并在数组上调用.to_xml,我会收到一个空的xml集合:

"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<activities type=\"array\">\n</activities>\n"

知道为什么或如何解决这个问题?

我正在使用最新版本的ROXML运行Rails 2.3.5。

1 个答案:

答案 0 :(得分:0)

类似的问题:Ruby ROXML - how to get an array to render its xml?。请查看详细信息。

似乎无法使用ROXML转换数组。解决此问题的一种方法是为集合定义新类:

class Activities
  include ROXML
  def initialize(activities) 
    @activities = activities 
  end
  xml_reader :activities, :as => [Activity]
end

并使用:

Activities.new(activities).to_xml