0.12.16 change_avatar_confirm_ajax RequestDataTooBig

This commit is contained in:
SDE
2024-02-05 22:41:50 +03:00
parent c48839ff8c
commit c87a7095ad

View File

@@ -249,6 +249,7 @@ def support_tickets_ajax(request):
@login_required(login_url='/profile/login/') @login_required(login_url='/profile/login/')
def change_avatar_confirm_ajax(request): def change_avatar_confirm_ajax(request):
from django.core.files.base import ContentFile from django.core.files.base import ContentFile
from django.core.exceptions import RequestDataTooBig
if request.method != 'POST': if request.method != 'POST':
raise Http404 raise Http404
@@ -261,11 +262,15 @@ def change_avatar_confirm_ajax(request):
file = ContentFile(content) file = ContentFile(content)
request.user.user_profile.avatar.save(file_data['file_name'], file) request.user.user_profile.avatar.save(file_data['file_name'], file)
request.user.user_profile.save(update_fields=['avatar']) request.user.user_profile.save(update_fields=['avatar'])
except RequestDataTooBig:
msg = _('Слишком большой размер файла. Размер файла не должен быть больше 3МБ')
print(msg)
JsonResponse({'error': msg}, status=400)
except Exception as e: except Exception as e:
msg = f'change_avatar_confirm_ajax Error = {str(e)}' msg = f'change_avatar_confirm_ajax Error = {str(e)}'
print(msg) print(msg)
JsonResponse({'error': msg}) JsonResponse({'error': msg}, status=400)
return JsonResponse({'url': request.user.user_profile.avatar.url}) return JsonResponse({'url': request.user.user_profile.avatar.url})