django import_export ..创建导入数据的视图

时间:2015-11-28 12:45:24

标签: python django django-import-export

我正在尝试使用django import-export模块..遵循文档here ..我能够创建导出视图..但导入视图不起作用..这是我的代码

---- ----- views.py

def dataset_export(request):
        ds=StudentResource().export()
        response=HttpResponse(ds.xls,content_type="xls")
        response['Content-Disposition']='filename=students.xls'
        return response

def dataset_import(request):
    dataset=tablib.Dataset(['', 'New book'], headers=['usn', 'name'])
    result=StudentResource().import_data(dataset,dry_run=False)
    response=HttpResponse(result,content_type="xls")
    return response

这是学生模型

----- models.py -

class Student(models.Model):
    name=models.CharField(max_length=30)
    usn=models.CharField(max_length=10)
    email=models.EmailField()

    def __str__(self):
        return '%s(%s)'%(self.name,self.usn)
    class Meta:
        ordering=["usn"]

和模型资源

class StudentResource(resources.ModelResource):
    class Meta:
        model=Student
        fields = ('usn', 'name', 'email')
        import_id_fields = ['usn','name','email']

1 个答案:

答案 0 :(得分:0)

import_data返回Result个对象,而不是xls文件。您应该渲染一些模板以通知用户导入已完成或显示错误。

有关Result课程的更多信息,请参阅:

https://github.com/django-import-export/django-import-export/blob/master/import_export/results.py