Я пытаюсь реализовать простой импорт и сохранение файла xls в модель с помощью django-import-export. К сожалению, документы закрывают только интеграцию с администратором. Я застрял здесь, в моем примере кода:django-import-export за пределами администратора
class UploadFileForm(forms.Form):
file = forms.FileField()
class ExportSpec(resources.ModelResource):
class Meta:
model = Specialty
view:
def ca_import(request):
if request.method == 'POST' and 'import_test' in request.POST:
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
filehandle = request.FILES['file']
dataset = ???
result = ExportSpec().import_data(dataset, dry_run=False,
raise_errors=True,
user=request.user)
Может кто-то с пониманием этого модуля поможет мне выполнить код этого общего примера?
Или есть общий пример, отрезанный где-то в сети, который я не нашел с помощью Google?
EDIT:
на основе Алекс ответ я был в состоянии найти рабочее решение:
def ca_import(request):
if request.method == 'POST' and 'import_test' in request.POST:
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
file = form.cleaned_data['file']
data = bytes()
for chunk in file.chunks():
data += chunk
dataset = XLS().create_dataset(data)
result = ExportSpec().import_data(dataset, dry_run=False, raise_errors=True, user=request.user)
Код выглядит хорошо до сих пор , Какая ошибка вы получаете, или с какой конкретной проблемой вы сталкиваетесь? –
См. Строку «dataset = ???». Я считаю, что мне нужно получить набор данных из дескриптора файла. – caliph