def test_form_renders_file_upload_field(self): # Given an upload file form form = UploadFileForm() # When the form is rendered rendered_form = form.as_p() # Then the upfile field is included assert 'id_upfile' in rendered_form
def upload_file(request): if request.method == 'POST': form = UploadFileForm(request.POST) if form.is_valid(): handle_uploaded_file(request.FILES['file']) return HttpResponse('/success/url/') else: form = UploadFileForm() return render(request, 'home.html', {'form': form})
def test_form_save(self): # Given a fake uploaded file upfile = SimpleUploadedFile('test.txt', b'test') # When using the file in a new form form = UploadFileForm({}, {'upfile': upfile}) # Then the form is valid assert form.is_valid() is True
def post(self, request: HttpRequest) -> HttpResponseRedirect: """Handle post request""" form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): activity = create_new_activity_for_user(user=request.user) for each in form.cleaned_data['upfile']: activity.add_track(each) return redirect('activities:details', activity.id) else: raise SuspiciousOperation
def import_data(request): template = loader.get_template('sachnr/import.html') if request.method == "POST": form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): request.FILES['file'].save_to_database( model=Sachnr, mapdict=['sachnr', 'description', 'dispo_id']) return HttpResponse("OK") else: return HttpResponseBadRequest("error :(") else: form = UploadFileForm() return HttpResponse(template.render({'form': form}, request))
def post(self, request: HttpRequest, activity_id: int) -> \ HttpResponseRedirect: """Handle post request""" activity = get_activity_by_id(activity_id) # Check to see if current user owns this activity, if not 403 if request.user != activity.user: raise PermissionDenied form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): for each in form.cleaned_data['upfile']: activity.add_track(each) return redirect('activities:view_activity', pk=activity.id) else: raise SuspiciousOperation
def viagem_editar(request, pk): item = get_object_or_404(Viagem, pk=pk) if request.method == "POST": form = ViagemForm(request.POST, instance=item) uploadform = UploadFileForm(request.POST, request.FILES) if form.is_valid(): path = handle_uploaded_file(pk, 'viagem', request.FILES['file']) print(path) item = form.save(commit=False) item.save() return redirect('viagem_pesquisar') else: uploadform = UploadFileForm() form = ViagemForm(instance=item) return render(request, 'viagem/formulario.html', {'form': form, 'uploadform': uploadform})
def status_alterar(request, pk, cod): viagem = get_object_or_404(Viagem, pk=pk) viagem.status = str(cod) viagem.save() uploadform = UploadFileForm() form = ViagemForm(instance=viagem) return render(request, 'viagem/formulario.html', {'form': form, 'uploadform': uploadform})
def api_convert(request): if request.method == 'POST': token = request.POST.get("token") if token: try: c = Customer.objects.get(token=token) if c.balance >= 1: form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): image = form.cleaned_data['file'] image = Image.open(image).convert('RGB') with io.BytesIO() as f: image.save(f, format='JPEG', optimize=True, quality=70) imi = f.getvalue() response = HttpResponse(imi, content_type="image/jpeg") response[ 'Content-Disposition'] = f'attachment; filename=image.jpg' c.balance -= 1 c.save() return response else: error = '' for i in form.errors.as_data()['file']: for j in i: error += j return HttpResponseNotFound(error) else: return HttpResponseNotFound("Low Balance Kindly Recharge") except: return HttpResponseNotFound("No Key Found") else: return HttpResponseNotFound("Wrong Key") else: return HttpResponseNotFound("Method Not allowed")
def upload(request): if request.method == 'POST': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): apk = form.save() apk_hash = os.path.dirname(apk.file.name) apk.file = apk_hash apk.save() analize_apk.delay(apk_hash) return redirect('results', apk_hash=apk_hash) else: form = UploadFileForm() return render(request, 'upload.html', {'form': form})
def get_context_data(self, **kwargs) -> dict: """Add additional data to user list context""" context = super(UploadFormMixin, self).get_context_data(**kwargs) context['upload_form'] = UploadFileForm() return context
def addEtat(request): if request.method == 'POST': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): filehandle = request.FILES['file'] # return excel.make_response(filehandle.get_sheet(), "csv") # filename = request.FILES.get('file').filename content = request.files['file'].read() # extension = filename.split(".")[-1] if os.version_info[0] > 2: # in order to support python 3 # have to decode bytes to str content = content.decode('utf-8') # sheet = excel.get_sheet(file_type=extension, file_content=content) sheet = excel.get_sheet(file_content=content) # sheet.name_columns_by_row(0) # date = request.POST.get('date') # peleringe = models.Pelerinage(date_pel=date) # # peleringe.save() # # book = xlrd.open_workbook(file) # sheet = pyexcel.get_sheet(file_name=file) # handle file upload # Obtain the file extension and content # pass a tuple instead of a file name # then use it as usual frais=0 # for row_index in (sheet): # row = "" # # c1 = sheet.cell(rowx=row_index, colx='frais').value # c1=(row_index['frais']) # # frais=(frais+21) # # for col_index in (sheet.ncols): # # c2 = sheet.cell(rowx=row_index, colx='matricule').value # c2=row_index['matricule'] # emp=models.Employe.objects.get(matricule=int(c2)) # ie=models.InfoEmploye(employe=emp,pelerin=peleringe,somme=int(c1)) # ie.save() # if type(value) is unicode: # value = unicodedata.normalize('NFKD', value).encode('ascii', 'ignore') # row += "{0} - ".format(value) # request.FILES.get('file').save_book_to_database( # models=[models.InfoEmploye], # mapdicts=[ # ['matricule', 'somme', 'slug'], # ['question', 'choice_text', 'votes']] # ) # eng = form.save(commit = False) # eng.employe = models.Employe.objects.get(matricule = matricule) # eng.date_en = date # eng.save() # if request.is_ajax(): # return HttpResponse(content=json.dumps({'success': '/success'})) # else: # return render(request, 'medical/smedical.html') # elif request.is_ajax(): # errors = json.dumps(form.errors) # return HttpResponse(errors) else: return render(request, 'ser_retraite/sretraite.html') else: form = UploadFileForm() return render(request,'ser_retraite/etat.html',{'form': form})
def convert(request): form = UploadFileForm() return render(request, "core/user_convert.html", {"form": form})