您有两个问题:
您正在将字符串传递给的构造函数
DictReader
。您必须传递一个可迭代的对象,该对象在输入中提供各行(字符串是可迭代的,但一次将每个字符赋予一个)。幸运的是,一个UploadedFile
对象(如FILES
字典中的对象)已经是支持迭代的类似文件的对象,因此只需执行以下操作:data = csv.DictReader(request.FILES['file'])
您的输入数据只有一行。
DictReader
将使用该行作为“标题”列,这将成为结果字典中的关键字。这样您将没有数据了!看来您不想要aDictReader
,只是一个固执reader
:data = csv.reader(request.FILES['file'])



