Как я могу исправить эту ошибку при использовании captcha в django?

Мой код (версия python=3.10, версия django=4.0):

def get_code(request):
    img = ImageCaptcha(200, 100)
    im = img.generate_image(chars='1234')
    fp = BytesIO()
    im.save(fp, 'png')
    return HttpResponse(fp.getvalue(), content_type='image/png')

Ошибка:

TypeError at /get_code/
'float' object cannot be interpreted as an integer
Request Method: GET
Request URL:    http://localhost:8000/get_code/
Django Version: 4.0
Exception Type: TypeError
Exception Value:    
'float' object cannot be interpreted as an integer

Попробуйте это :

return HttpResponse(int(fp.getvalue()), content_type='image/png')

Таким образом:

def get_code(request):
    img = ImageCaptcha(200, 100)
    im = img.generate_image(chars='1234')
    response = HttpResponse(content_type='image/png')
    im.save(response, 'PNG')
    return response
Вернуться на верх