【发布时间】:2018-09-14 08:39:49
【问题描述】:
我正在构建一个 django 应用程序,它可以让人们上传将存储在 S3 中的 CSV(基于 django-storages),然后由 celery 任务处理,然后将它们摄取到数据库中。
这些 CSV 可以是任意大小,从几行(Django 将其存储为InMemoryUploadedFile)到数百兆字节(django 将使用TemporaryUploadedFile。)
我在通用CreateView 上使用简单的ModelForm,但我想添加一种方法来检查文件(标题)中的第一行,以验证 CSV 是否包含我需要的所有列。
如果我知道文件的路径,这将非常简单。我只是使用 python 的标准文件和 csv 处理功能将第一行读入csv 模块并检查字段。但是我如何使用上传的文件来做到这一点,它可能在内存中,也可能是模型表单中的临时文件?
【问题讨论】:
标签: python django django-forms django-file-upload