Я попытался обновить изображение профиля пользователя, используя представление функции (ajax), но постоянно получаю сообщение об ошибке ниже:
повышение MultiValueDictKeyError (ключ) django .utils.datastructures.MultiValueDictKeyError : 'emp_photo'
Та же самая техника, которую я использую, используется в CharField и TextField без проблем.
Пожалуйста, смотрите мои коды ниже.
views.py
@login_required(login_url='/login/')
@user_passes_test(user_type_combo)
def change_employee_photo(request, pk):
data = dict()
profile = get_object_or_404(Profile, pk=pk)
if request.method == 'POST':
form = EmployeePhotoForm(request.POST or None, request.FILES or None, instance=profile)
if form.is_valid():
newPic = profile(emp_photo=request.FILES['emp_photo'])
newPic.save()
data['is_valid'] = True
else:
form = EmployeePhotoForm(instance=profile)
data['form_is_valid'] = False
context = {
'form': form,
}
data['html_form'] = render_to_string('employees/partial_employee_photo.html',
context,
request=request
)
return JsonResponse(data)
forms.py
Я определенно буду признателен за любую помощь чтобы решить эту проблему.