def upload(request): if request.method == 'POST': form = FileUploadForm(request.POST, request.FILES) if form.is_valid(): f = Upload() f.filename = form.cleaned_data['file'] f.save() # messages.add_message(request, messages.SUCCESS, u'文件 {0} 上传成功, 大小为{1}KB'.format(f.filename.name.split('/')[-1], int(f.filename.size)/1024)) # return HttpResponseRedirect(reverse('push')) return HttpResponse(u'文件 {0} 上传成功, 大小为{1}KB'.format(f.filename.name.split('/')[-1], int(f.filename.size)/1024))
def get_response(self, request, *args, **kwargs): try: folder = Folder.objects.get( pk=request.POST.get('selected_folder_id', 0)) except Folder.DoesNotExist: raise Http404 form = FileUploadForm(request.POST, request.FILES) if form.is_valid(): file = form.save(commit=False) file.folder = folder file.save() return {'result': 'success'} else: return {'result': 'error'}
def uploadFile(request): if request.method == 'POST': #print request.FILES['file'].name form = FileUploadForm(request.POST, request.FILES) if form.is_valid(): form.save() print 'upload successful' else: form = FileUploadForm() print 'upload unsuccessful' return render(request, '../templates/index.html', {'form': form})
def upload_file(request): """ Upload file :param request: HTTP request :return: json data in python dict """ if request.method == 'POST': form = FileUploadForm(request.POST, request.FILES) if form.is_valid(): form.save() return dict( filelink=form.get_media_url(), filename=form.get_filename() ) return {}
def list(request): # Handle file upload form = FileUploadForm(request.POST or None, request.FILES) if form.is_valid(): for obj_file in request.FILES.getlist('file'): fileup = File(file=obj_file) fileup.save() # Redirect to the search view after POST return HttpResponseRedirect(reverse('files')) results = File.objects.all() return render_to_response('search/search.html', { 'results': results, 'form': form }, context_instance=RequestContext(request))
def list(request): # Handle file upload form = FileUploadForm(request.POST or None, request.FILES) if form.is_valid(): for obj_file in request.FILES.getlist('file'): fileup = File(file = obj_file) fileup.save() # Redirect to the search view after POST return HttpResponseRedirect(reverse('files')) results = File.objects.all() return render_to_response( 'search/search.html', {'results': results, 'form': form}, context_instance = RequestContext(request) )
def get_response(self, request, *args, **kwargs): try: folder = Folder.objects.get(pk=request.POST.get('selected_folder_id', 0)) except Folder.DoesNotExist: raise Http404 form = FileUploadForm(request.POST, request.FILES) if form.is_valid(): file = form.save(commit=False) file.folder = folder file.save() return { 'result': 'success' } else: return { 'result': 'error' }
def upload_file(request): #上传文件 """ 文件接收 view :param request: 请求 :return: """ if request.method == 'POST': #POST和GET是HTTP协议定义的与服务器交互的方法。GET一般用于获取/查询 资源信息,而POST一般用于更新 资源信息。GET提交,请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,多个参数用&连接;POST提交:把提交的数据放置在是HTTP包的包体中。GET提交的数据会在地址栏中显示出来,而POST提交,地址栏不会改变 my_form = FileUploadForm(request.POST, request.FILES) #文件上传的时候,文件数据被保存在 request. FILES if my_form.is_valid(): # f = my_form.cleaned_data['my_file'] # handle_uploaded_file(f) filemodel = uploadfile() #保存记录到数据库 filemodel.filepath = my_form.cleaned_data['my_file'] #不管表单提交的是什么数据,一旦通过调用 is_valid() 成功验证( is_valid() 返回 True ),验证后的表单数据将位于 form.cleaned_data字典中。这些数据已经为你转换好为Python 的类型。 filemodel.save() return HttpResponse('Upload Success') else: my_form = FileUploadForm() return render(request, 'tb/upload.html', {'form': my_form}) #根据html的请求,视图将返回特定的html模板以及字典参数数据
def upload_form(request): # check that the file was posted and that the FILES object contains key of image if request.method == 'POST' and request.FILES['image']: # retrieve the file obj image = request.FILES['image'] document = request.FILES['document'] """ NEED TO USE FILESYSTEMSTORAGE TO SAVE TO CORRECT LOCATION """ # save the IMAGE to the filesystem and retrieve the URL from where it is stored #img_folder = 'media/images/' #fs_img = FileSystemStorage(location=img_folder,base_url='/media/images/') fs_img = FileSystemStorage(location=settings.FS_IMAGE_UPLOADS, base_url=settings.FS_IMAGE_URL) imageName = fs_img.save(image.name, image) uploaded_image_url = fs_img.url(imageName) # save the DOCUMENT to the filesystem and retrieve the URL from where it is stored #doc_folder = 'media/documents/' #fs_doc = FileSystemStorage(location=doc_folder,base_url='/media/documents/') fs_doc = FileSystemStorage(location=settings.FS_DOCUMENT_UPLOADS, base_url=settings.FS_DOCUMENT_URL) documentName = fs_doc.save(document.name, document) """ File saves to the correct location e.g. media/documents/band.txt BUT .url is incorrect e.g. media/band.txt """ uploaded_document_url = fs_doc.url(documentName) """ NEED TO PASS uploaded_image_url uploaded_document_url TO THE FORM __INIT__ function so that it can be saved to the model So: list created containing URLs to be used as KWARGS in forms.py init function """ _URL_LIST = [uploaded_image_url, uploaded_document_url] #form = FileUploadForm(uploaded_image_url,uploaded_document_url,request.POST) #form = FileUploadForm(request.user,request.POST) # Declare the form to use and pass params form = FileUploadForm(request.user, request.POST, _urls=_URL_LIST) # check the form is valid and if yes, save it if form.is_valid(): form.save() messages.success( request, "You have successfully registered as an Entertainer") return render( request, 'uploads/upload_form.html', { 'uploaded_image_url': uploaded_image_url, 'uploaded_document_url': uploaded_document_url }) else: # If page was just loaded then an empty form is displayed form = FileUploadForm(request.user) return render(request, 'uploads/upload_form.html', {'form': form})