You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

23 lines
932 B

  1. from django.http import HttpResponseRedirect
  2. from django.shortcuts import render
  3. from .apps import DetectAppConfig
  4. from .forms import UploadFileForm
  5. from .upload import handle_uploaded_file
  6. from .detect import detect
  7. def upload_file(request):
  8. result = None
  9. if request.method == 'POST':
  10. form = UploadFileForm(request.POST, request.FILES)
  11. if form.is_valid():
  12. input_path = DetectAppConfig.image_filebase + DetectAppConfig.image_file_input
  13. output_path = DetectAppConfig.image_filebase + DetectAppConfig.image_file_output
  14. output_url = DetectAppConfig.image_urlbase + DetectAppConfig.image_file_output
  15. handle_uploaded_file(request.FILES['file'], input_path)
  16. detect(input_path, output_path)
  17. result = output_url
  18. else:
  19. form = UploadFileForm()
  20. return render(request, 'detect_app/upload.html', {'form': form, 'result': result})