2012-06-07 72 views
0

我遇到了使用zope的麻煩。 我只需要向客戶端提供一個使用python xlwt模塊創建的xls文件,但我沒有找到實現該目的的方法。在zope中流式傳輸xls文件

在我的.pt文件中,我有一個調用.py函數的按鈕,該函數正確創建文件,但不會將其提供給客戶端瀏覽器。 我想以這樣的方式

f = open(temp_file, 'rb').read() 
self.request.response.setHeader('Content-Type', 'application/vnd.ms-excel') 
self.request.response.setHeader('Content-Disposition',' attachment; filename=Excel_Workbook.xls') 
return f 

我怎麼能這樣做?

謝謝大家!

+0

您開放使用瀏覽器視圖做到這一點?我使用瀏覽器視圖和自定義的「文件流迭代器」來完成此操作,該文件流迭代器使用(並在完成時處置)臨時文件。 – sdupton

回答

0

你是怎麼稱呼腳本的?您需要直接從URL調用它,而不是從模板中調用它。

包括下載URL在你的模板到您的Python腳本:

<a href="http://yoursite/path/to/script">Download an Excel spreadsheet</a>