0
我正在使用Nokogiri在我的應用程序中生成XML文件。我想保存這個文件,並且我想顯示一個對話框,用戶可以在其中選擇下載此文件的文件夾。 這是在我的控制器動作:Rails send_data不保存文件
def download
require 'nokogiri'
if owner_signed_in?
@slips = current_owner.slips
builder = Nokogiri::XML::Builder.new do |xml|
xml.cedolini{
@slips.each do |slip|
xml.cedolino{
xml.codicecliente_ slip.client_code
xml.data_ slip.day.to_s
xml.ordini{
slip.product_slips.each do |order|
xml.ordine {
xml.codicearticolo_ order.product_code
xml.descrizionearticolo_ order.product_description
xml.ammontare_ order.amount.to_s
}
end
}
}
end
}
end
file = builder.to_xml
send_data file, :type => 'text/xml; charset=UTF-8;', :disposition => "attachment; filename=db.xml"
end
end
我有這樣定義的路線:
get '/dbsinc/download'
當我調用視圖中的作用,它不保存XML,我通過我的動作的url來查看新頁面,並在頁面中看到頁面上呈現的XML文件,但它不打開任何對話框來保存文件。 我哪裏錯了?由於
什麼是'endit do'? –
我在複製和粘貼時犯了一個錯誤,它只是和結束聲明,我現在用正確的代碼編輯了 –
如果您修復了縮進,它也可能有助於易讀性。 –