下载XML文件而不是使用Builder进行渲染

我目前正在使用Builder来进行自定义XML导出。 但是,当用户单击按钮时,我希望下载.xml而不是渲染。

我已经尝试使用send_data而不是render但这似乎被构建器覆盖了。

还使用ActiveAdmin(因此是member_action

在我的控制器中:

  member_action :show do @listing = Listing.find(params[:id]) respond_to do |format| format.html format.xml end end 

链接到show.xml.builder

 xml.instruct! xml.XMLopener { |b| b..... ...... .... } 

我看了下面的几个链接,但我似乎无法让它工作。 有任何想法吗? 显然,使用当前代码它只是渲染,它完美地工作。

https://www.6.software.ibm.com/developerworks/education/x-rubyonrailsxml/x-rubyonrailsxml-a4.pdf http://danengle.us/2009/05/generating-custom-xml-for-your-rails -app /

你尝试过这样的事吗?

 respond_to do |format| format.html format.xml { send_file :filename => 'mydoc.xml', :type=>"application/xml", :disposition => 'attachment' } end