def _update(request, pk): task = get_object_or_404(Task, pk=pk, user=request.user) if request.method == 'POST': form = EditTaskForm(request.POST, instance=task) if form.is_valid(): updated_task = form.save() messages.success(request, "Task edit successful.") return redirect('tasks:index') return edit(request, pk, form) elif request.method == 'PUT': put_data = urlparse.parse_qs(request.raw_post_data) data = {k:v[0] for k,v in put_data.items()} task.description = data.get('description', task.description) task.priority = int(data.get('priority', task.priority)) task.save() return HttpResponse("Success")