Pyexcel 从 excel 上传中获取记录

Pyexcel get records from excel upload

我正在尝试将 pyexcel 集成到 Django 项目中,并尝试按照文档中的示例进行操作。

我正在尝试复制此功能:

import pyexcel as pe
records = pe.iget_records(file_name="your_file.xls")
for record in records:
    print("%s is aged at %d" % (record['Name'], record['Age']))

如何通过文件上传打开记录。我试过这样做但没有成功:

if request.method == "POST":
    form = UploadFileForm(request.POST, request.FILES)
    records = pe.iget_records(file_name=request.FILES['file'])
    for record in records:
    ..

这一行有问题:记录 = pe.iget_records(file_name=request.FILES['file'])

编辑: 似乎发生在 for 循环中并且是:

IOError: Wrong file name

文档中有一个get_records

if request.method == "POST":
    form = UploadFileForm(request.POST, request.FILES)
    records = request.FILES['file'].get_records()
    for record in records:
    ..

如果你坚持使用iget_record,你可以试试:

if request.method == "POST":
    form = UploadFileForm(request.POST, request.FILES)
    file = request.FILES['file']
    file_type = file.name.split('.')[-1]
    records = pe.iget_records(file_stream=file, file_type=file_type)
    for record in records:
    ..