Django-import-export获取文件名

问题描述 投票:1回答:1

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

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

过程是:

  1. 有人导入文件

  1. 文件名存储

  1. 如果有人再次尝试上传同一文件,则会出错

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

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

python django django-import-export
1个回答
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
© www.soinside.com 2019 - 2024. All rights reserved.