0

我对acts_as_api 有疑问。我想像这样格式化一个xml字符串:

<root>
  <child property="property_value">Some Text</child>
  etc
</root>

这个有可能?

提前致谢

4

2 回答 2

1

的预期用途acts_as_api是与键值对一起使用。

如果您想通过混合内容和结构来打破该约定,您可能最好在不使用库支持的情况下创建自己的 xml。

您可以做的,我认为这不是一个好主意,就是将对acts_as_api 的一次调用的结果放入您的root标签的值中。

您也许可以重用acts_as_api子模型的行为。

于 2013-10-14T08:56:32.687 回答
1

我认为这不会自动工作,因为您想将数据放在 XML 结构中的两个不同位置:

  • 节点的属性
  • 节点内容

但是您的模型的属性包含一个哈希。 acts_as_api(或另一个序列化程序)无法确定哪些属性应该在属性中,哪些应该作为内部文本。

对于这种情况,您必须提供自己的序列化程序(您可以查看http://api.rubyonrails.org/classes/ActiveRecord/Serialization.html#method-i-to_xml,了解如何在 Rails 中执行此操作。

于 2013-10-14T15:47:04.067 回答