下午好,
我正在尝试将完整的ActiveRecord错误列表呈现为XML,问题在于您执行以下操作时:
respond_to do |format|
format.xml { render :xml => @object }
end
如果你不这样说,它不会渲染嵌套属性,所以要么:你应该创建一个模板或调用explicity to_xml方法并使用“:include”。最后一个选项似乎适用于模型关联的嵌套属性。但如果我们遇到错误呢?此代码不起作用:
respond_to do |format|
format.xml { render :xml => @client.to_xml(:include => :errors }
end
我知道我可以做@ client.errors甚至隐藏.to_xml,但现在我想做的事情如下:
respond_to do |format|
format.xml { render :xml => @client.to_xml(:include => {
:errors,
:client_contact => {:include => :errors } } )}
end
据说我只能获得1 xml,来自客户端的错误,以及来自client.client_contact的错误!如果我做错了,请告诉我,或者说:包含不应该用于错误
此致
答案 0 :(得分:1)
在API文档中查看XML builder的文档。您可以根据任意数量的条件生成XML,并根据需要输出它。
还有一个Railscasts episode向您展示如何为RSS Feed做类似的事情。