将图像上传到 Django 休息模型
uploading image to django rest model
我正在尝试将图像上传到 media 目录下的 Images 文件夹。我在 views.py;
上使用以下 APIView
class FileUploadView(APIView):
parser_classes = (FileUploadParser,)
def post(self, request, format='jpg'):
up_file = request.FILES['file']
destination = open('C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images', 'wb+')
for chunk in up_file.chunks():
destination.write(chunk)
destination.close()
return Response(up_file.name, status.HTTP_201_CREATED)
但是,当我发送请求时,出现以下错误;
> PermissionError: [Errno 13] Permission denied:
> 'C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images'
> [12/Dec/2016 15:10:45] "POST /imageUpload HTTP/1.1" 500 19170
我已经在settings.py中添加了MEDIA_ROOT和MEDIA_URL;
> MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
>
> MEDIA_URL = '/media/'
试试这个:
destination = open('C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images' + up_file.name, 'wb+')
使用您的代码,您正在尝试重写目录而不是文件。
我正在尝试将图像上传到 media 目录下的 Images 文件夹。我在 views.py;
上使用以下 APIViewclass FileUploadView(APIView):
parser_classes = (FileUploadParser,)
def post(self, request, format='jpg'):
up_file = request.FILES['file']
destination = open('C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images', 'wb+')
for chunk in up_file.chunks():
destination.write(chunk)
destination.close()
return Response(up_file.name, status.HTTP_201_CREATED)
但是,当我发送请求时,出现以下错误;
> PermissionError: [Errno 13] Permission denied:
> 'C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images'
> [12/Dec/2016 15:10:45] "POST /imageUpload HTTP/1.1" 500 19170
我已经在settings.py中添加了MEDIA_ROOT和MEDIA_URL;
> MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
>
> MEDIA_URL = '/media/'
试试这个:
destination = open('C:\Users\cano\Desktop\workspace\campusBackend\campusBackend\media\Images' + up_file.name, 'wb+')
使用您的代码,您正在尝试重写目录而不是文件。