詳細的主題我需要一些關於下載xls文件的方式的解釋。 在Odoo8上,通過嚮導創建一個帶有xlwt的xls文件,並使用函數wb.save(filename)將其存儲到文件系統中。 但是,經過大量的谷歌搜索,我不能滿足我的需求,而且我真的很難過...... 有沒有人幫助我正確使用?如何在Odoo8下載xls文件?
0
A
回答
0
這裏是完美的例子下載xls文件。
第1步:在常規模型(嚮導)中創建一個方法並返回URL。
@api.multi
def get_file(self):
return {
'type' : 'ir.actions.act_url',
'url': '/web/binary/download_document?model=wizard.product.stock.report&field=datas&id=%s&filename=product_stock.xls'%(self.id),
'target': 'self',
}
(就像文件,你可以在/web/controllers/main.py看到)
第2步:做一個控制器類和趕上網址和下載的過程中做excel文件。
from openerp import http
from openerp.http import request
from openerp.addons.web.controllers.main import serialize_exception,content_disposition
import base64
class Binary(http.Controller):
@http.route('/web/binary/download_document', type='http', auth="public")
@serialize_exception
def download_document(self,model,field,id,filename=None, **kw):
""" Download link for files stored as binary fields.
:param str model: name of the model to fetch the binary from
:param str field: binary field
:param str id: id of the record from which to fetch the binary
:param str filename: field holding the file's name, if any
:returns: :class:`werkzeug.wrappers.Response`
"""
Model = request.registry[model]
cr, uid, context = request.cr, request.uid, request.context
fields = [field]
res = Model.read(cr, uid, [int(id)], fields, context)[0]
filecontent = base64.b64decode(res.get(field) or '')
if not filecontent:
return request.not_found()
else:
if not filename:
filename = '%s_%s' % (model.replace('.', '_'), id)
return request.make_response(filecontent,
[('Content-Type', 'application/octet-stream'),
('Content-Disposition', content_disposition(filename))])
在上述方法我已得到的URL的ID,然後應用於一些計算,並返回從請求的HTTP響應。無論從嚮導傳遞給控制器方法的任何值,我都會將它們應用於控制器方法,並且在該控制器方法中,我將執行必要的過程並直接返回文件。
見下面,我已經過了模型,場,編號和文件名從URL
/web/binary/download_document?model=wizard.product.stock.report &場= DATAS & ID =%s的&文件名= product_stock.xls
使用上面的方法,你可以創建XLS,CSV,TXT的文件。
謝謝,
相關問題
- 1. Ruby/Nokogiri/Mechanize:如何下載XLS文件?
- 2. 下載.xls文件的href
- 3. Grails .xls文件下載
- 4. 如何在ActionScript3中加載xls文件?
- 5. 如何下載由Jasper Report生成的xls文件在extj 4.0.2a
- 6. 從網站自動下載XLS文件
- 7. 下載xls文件angular jax-rs
- 8. Angular2:從後臺下載xls文件
- 9. 從應用程序下載xls文件
- 10. 如何下載存儲在Ir_attachment中的xls文件或打開保存在本地的xls文件?
- 11. 腳本下載嵌入在.msg文件中的xls文件
- 12. 如何下載octet-stream作爲xls文件?
- 13. Android的 - 如何從一個parcticular站點下載xls文件
- 14. 如何使用apache POI下載xls或xlsx文件
- 15. 如何使用Angular和Spring Rest服務下載xls文件?
- 16. POI HSSF XLS在Servlet中下載問題 - 新的XLS文件正在下載與前面的工作表
- 17. python下載xls javascript
- 18. odoo8的配置文件在哪裏
- 19. 如何在android中加載大型xls文件?
- 20. 如何在PHP中將.xls文件加載到mysql數據庫?
- 21. 如何將xls數據從多個xls文件加載到配置單元中?
- 22. 如何在android下載任何文件?
- 23. 如何下載MP3文件
- 24. 如何下載文件
- 25. SharpGS如何下載文件?
- 26. Phonegap - 如何下載文件
- 27. 如何下載此文件?
- 28. 如何下載RAR文件?
- 29. 兆如何下載文件?
- 30. 從url下載xls文件到數據框(Rcurl)?
你應該避免只發布鏈接在你的答案。如果鏈接不再有效會發生什麼?這反過來會使你的答案無效... – Goralight
好的,下次我會給你答案與適當的例子。 –