[django]利用xlwt實現文件下載功能


代碼:

url.py:

url(r'^importmould/$', 'keywork.views.xls_mould', name='xls_mould'),

view.py:

from django.http import HttpResponse 

import xlwt #xls寫

def xls_mould(request):
    response = HttpResponse(content_type='application/vnd.ms-excel') 
    response['Content-Disposition'] = 'attachment; filename=DEMO.xls' 
    workbook = xlwt.Workbook(encoding='utf-8') #創建工作簿
    sheet = workbook.add_sheet("sheet1") #創建工作頁
    row0 = [u'用戶標識',u'設備狀態',u'用戶號碼',u'用戶姓名',u'賬戶編碼',
            u'產品ID',u'支局名稱',u'支局ID',u'區域名稱',u'區域ID',
            u'網格名稱',u'銷售人員名稱',u'銷售點名稱',u'號碼竣工時間',u'號碼拆機時間',
            u'用戶類型',u'產品其他標識',u'服務提供ID',u'服務提供名稱',u'CRM竣工時間',
            u'CRM受理員工',u'CRM受理工號',u'受理點',u'銷售貧名稱',u'統計時間'
            ]
    for i in range(0,len(row0)):
        sheet.write(0,i,row0[i])
    workbook.save(response)    
    return response

template模板文件:

<a href="{% url 'xls_mould' %}" class="btn btn-primary btn-sm" type="button">模板</a>

實現該功能主要注意兩個方面:

1,在view.py中下面兩行代碼必須加入進去,

 

response = HttpResponse(content_type='application/vnd.ms-excel') #這里響應對象獲得了一個特殊的mime類型,告訴瀏覽器這是個exell文件不是html

response['Content-Disposition'] = 'attachment; filename=DEMO.xls' #這里響應對象獲得了附加的Content-Disposition協議頭,它含有excel文件的名稱,文件名隨意,當瀏覽器訪問它時,會以"另存為"對話框中使用它.

 

 2,注意xlwt的使用方法,下章將詳細講解xlwt的使用方法!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM