Django-import-export获取文件名

时间:2018-02-12 23:02:01

标签: python django django-import-export

我一直在搜索文档和互联网几天,试图找出如何从Django导出导出管理面板的导入功能中捕获导入的文件名。

基本上,我想保存此文件名以确保将来的文件上传不一样。

过程是:

  1. 有人导入文件
  2. picture of admin panel with import button

    1. 存储文件名
    2. admin panel, import file section

      1. 如果有人再次尝试上传同一文件,请输入错误
      2. error in file import

        但我无法弄清楚如何从Django导入导出中获取该文件名。非常感谢帮助。

        更新2/15/2018:我正在使用tablib在views.py中创建一个变通方法,并在Django-import-export接管之前拦截数据。精神很高。

1 个答案:

答案 0 :(得分:0)

您可以在many pre/post function parameters中获取文件名,我的示例更新记录的文件名:

class MyResouce(resources.ModelResource):
    class Meta:
        model = MyDjangoModel

    def after_import_instance(self, instance, new, **kwargs):
        # update file name
        file_name = kwargs.get('file_name', 'unknown')
        instance.source = file_name