def index(request): provider = create_by_request(request) if request.method == 'GET': tasks = Task.task_list().filter(status='downloading') return provider.index_get({'tasks': tasks}) elif request.method == 'POST': content_obj = provider.index_post() if content_obj.is_valid(): obj = content_obj.get_obj() DownloadManager.add_task(obj) # return redirect('/') # return redirect('/tasks/' + str(obj.pk)) return provider.index_post_ok({'task': obj}) else: return provider.index_post_error({'errorsList': content_obj.errors})
def task_details(request, pk): try: task = Task.objects.get(pk=pk) except Task.DoesNotExist: return HttpResponse(status=404) provider = create_by_request(request) if request.method == 'GET': return provider.task_detail_get({'task': task}) elif request.method == 'PUT': obj = provider.task_detail_put() if obj.is_valid(): task.title = obj.object.title task.fileUrl = obj.object.fileUrl task.save() return provider.task_details_put_ok() else: return provider.task_details_put_error(obj.errors) elif request.method == 'DELETE': DownloadManager.delete_task(task) return HttpResponse(status=204)