Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django从views.py导入数据_Python_Django_Django Import Export - Fatal编程技术网

Python django从views.py导入数据

Python django从views.py导入数据,python,django,django-import-export,Python,Django,Django Import Export,我正在使用django导入导出库来导入和导出xls格式,所有工作可能都在AdminModel中进行,现在我正在尝试使用views.py和templates进行导入,但由于某些原因,我无法使用 views.py def simple_upload(request): if request.method == 'POST': person_resource = resources.SimsResource() dataset = Dataset() new_persons =

我正在使用django导入导出库来导入和导出xls格式,所有工作可能都在AdminModel中进行,现在我正在尝试使用views.py和templates进行导入,但由于某些原因,我无法使用

views.py

def simple_upload(request):
if request.method == 'POST':
    person_resource = resources.SimsResource()
    dataset = Dataset()
    new_persons = request.FILES['myfile']

    imported_data = dataset.load(new_persons.read())
    result = person_resource.import_data(dataset, dry_run=True)  # Test the data import

    if not result.has_errors():
        person_resource.import_data(dataset, dry_run=False)  # Actually import now

    return render(request, 'import_sims.html', {'errors': result.has_errors(), 'result': result})

return render(request, 'import_sims.html')
资源.py

class SimsResource(resources.ModelResource):
class Meta:
    model = models.Sim
    fields = ['s_serial_number', 's_number', 's_provider', 'status']
forms.py

class UploadFileForm(forms.Form):
    file = forms.FileField()
url.py

    url(r'^importing_sims/$', views.simple_upload, name='Import'),
模板

    {% if errors %}
        errors:
        {{ errors }}
        <br><br><br>
        resluts :
        {{ result }}
    {% endif %}

      <form method="post" enctype="multipart/form-data">
        {% csrf_token %}
        <input type="file" name="myfile">
        <button type="submit">Upload</button>
      </form>
在管理导入中未显示

以下是最新消息:

def simple_upload(request):
    if request.method == 'POST':
    form = forms.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 = resources.SimsResource().import_data(dataset, dry_run=False, raise_errors=True, user=request.user)
        return render(request, 'import_sims.html', {'errors': result.has_errors(), 'result': result})

return render(request, 'import_sims.html')
KeyError at /importing_sims/
'id'
def simple_upload(request):
    if request.method == 'POST':
    form = forms.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 = resources.SimsResource().import_data(dataset, dry_run=False, raise_errors=True, user=request.user)
        return render(request, 'import_sims.html', {'errors': result.has_errors(), 'result': result})

return render(request, 'import_sims.html')