Django_tables2插件在web應用開發中使用廣泛,使用它可以快速實現將後臺數據庫中的信息在前端以表格的形式呈現給用戶,深得程序員喜歡。而用來導出CSV文件的Tablib插件配合Django_tables2使用可謂是錦上添花。只要完成兩個步驟:1. 在原來前端模板中添加一個超鏈接,2. 再在原來的視圖函數上插入幾行代碼,就可以實現我們想要的功能。
1、 安裝tablib插件
pip install tablib
2、在前端模板上添加一個超鏈接【導出清單】,html代碼如下
<a href="{{ request.get_full_path }}{% if '?' in request.get_full_path %}&{% else %}?{% endif %}_export=csv">[導出清單]</a>
效果圖:
3、在原來的視圖函數上面加入如下代碼;
export_format = request.GET.get("_export", None)
if TableExport.is_valid_format(export_format):
exporter = TableExport(export_format, table)
return exporter.response("table.{}".format(export_format))
4、啓動測試服務器python manage.py runserver
5、在瀏覽器中打開測試網址,點擊【導出清單】
屏幕會彈出窗口,提示打開或者保存CSV文件。