以django形式上传图片

时间:2013-08-14 10:57:23

标签: python django error-handling image-uploading

上传图片,但其功能不正常: 在视图中

 def upload_file(request):
        if request.method == 'POST':
            form = UploadFileForm(request.POST, request.FILES)
            if form.is_valid():
                handle_uploaded_file(request.FILES['file'])
                return HttpResponseRedirect('/user_profileform/')
        else:
            form = UploadFileForm()
        return render_to_response('user_profile.html', {'form': form })

    def handle_uploaded_file(f):
        with open('ranjeet.txt', 'wb+') as destination:
            for chunk in f.chunks():
                destination.write(chunk)



    form is: 
    <form action="" method="POST" enctype="multipart/form-data" name="uform" id="userform">{% csrf_token %}
    {{form}}

<input type="submit" value="submit" name="usubmit">
</form> 
设置中的

MEDIA_ROOT ='/ media / images /' MEDIA_URL ='/ media /'

我不知道文件的保存位置。

1 个答案:

答案 0 :(得分:0)

我认为问题出在您尝试打开目的地的时候。你在那里提供了“ranjeet.txt”这是一个文件。在那里,您应该提供硬盘/文件夹路径的路径,以便保存上传的文件。 请尝试使用此代码:

destination = open(settings.MEDIA_ROOT, 'wb+')

for chunk in f.chunks(): //f is the file info passed to handle_file_upload(f)               
    destination.write(chunk)
destination.close()

我在您的代码中发现的另一个问题。在表格行动中我既没有找到任何网址也没有“。”