第一步:安装插件
pip install django-import-export
第二步:注册应用
INSTALLED_APPS = (
...
'import_export',
)
第三步:app文件夹里创建一个名为resources.py
resources.py
from import_export import resources
from .models import Person
class PersonResource(resources.ModelResource):
class Meta:
model = Person
第四步:导出到CSV/Excel视图
from django.http import HttpResponse
from .resources import PersonResource
def export(request):
person_resource = PersonResource()
queryset = Person.objects.filter(location='Helsinki')
dataset = person_resource.export(queryset)
# 导出到csv文件
response = HttpResponse(dataset.csv, content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename="persons.csv"'
# 导出到excel文件,office打开是空白,wps打开正常显示然后存储为xlsx文件,再用office打开就正常了
# response = HttpResponse(dataset.xls, content_type='application/vnd.ms-excel')
# response['Content-Disposition'] = 'attachment; filename="persons.xls"'
return response