Ошибка функции возврата Python - PullRequest
1 голос
/ 09 мая 2011

При выполнении этой функции для проверки ключа и значения капчи я не могу вернуть это показывает ошибку, как это «AttributeError: объект« bool »не имеет атрибута« код_состояния »»

def validate(request):
 id=request.GET.get('id','')
 key=request.GET.get('key','') 
 captchavalue = mc.get(str(id))

 if captchavalue == key:

     return True

 else:

     return False

Ответы [ 2 ]

2 голосов
/ 09 мая 2011

Читая код и ошибку, я предполагаю, что validate является представлением.Представление всегда должно возвращать HttpResponse.Поэтому, если вы хотите вернуть ответ, указывающий логическое значение с указанием captchavalue == key, выполните:

from django.http import HttpResponse

def validate(request):
 id=request.GET.get('id','')
 key=request.GET.get('key','') 
 captchavalue = mc.get(str(id))

 return HttpResponse(captchavalue == key)

Я не уверен на 100% в строке импорта, но это что-то очень похожее.

0 голосов
/ 09 мая 2011

Я не знаю много Django, но, похоже, он ожидает, что вы вернете объект ответа вместо значения bool (True / False).

Возможно, ваш код должен понравитьсябольше похоже на это:

if captchvalue == key:
    return HttpResponse('HTML Page saying OK')
else:
    return HttpResponse('HTML Page saying Error')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...