1

我已经对 django-import-export 进行了一些研究,但是我发现的大多数示例都是使用 django admin .. 我正在尝试从我的模板将数据导入 django 模型(单击按钮时会出现一个模式选择文件位置,然后提交),

我感到迷茫,我不知道如何开始..

这是我的模型:

class Musician(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    instrument = models.CharField(max_length=100) 

有人可以通过给出要遵循的步骤来指导我吗?

提前致谢 !

4

1 回答 1

0

我没有使用过 django-import-export,但是使用 python 的内置 csv 模块为 CSV 生成编写视图并不困难。

Django 文档也有一个关于输出 csv的部分。

以下是基于文档中提供的示例的片段:

import csv
from django.http import HttpResponse
from django.views.generic import View

class CsvExportView(View):

    def get(self, request):
        # create a response object
        response = HttpResponse(content_type='text/csv')
        # assign a filename for csv
        response['Content-Disposition'] = 'attachment; filename="{}"'.format("filename.csv")
        wr = csv.writer(response, dialect='excel')
        # get queryset
        queryset = Musician.objects.all()
        # write every queryset to response object
        for obj in queryset:
            row = [obj.first_name, obj.last_name, obj.instrument]
            wr.writerow(row)
        # return response object
        return response
于 2017-03-30T19:39:00.050 回答