def edit(request, pk): person = Person.objects.get(id=pk) form = PersonEditForm(instance=person) photo = person.photo.url if person.photo else None if request.method == 'POST' and request.is_ajax(): form = PersonEditForm(request.POST, request.FILES, instance=person) response_data = dict() if form.is_valid(): form.save() else: response_data['errs'] = process_form_err(form) logger.info('Errors of form saving!' + str(response_data['errs'])) form.photo = person.photo.url if person.photo else None response_data['form'] = (RemoteForm(form)).as_dict() response_data['form']['fields']['photo']['initial'] = None response_data['photo'] = photo return HttpResponse(json.dumps(response_data), content_type='application/javascript') return render(request, 'hello/edit.html', {'form': form, 'person': person, 'photo': photo})