Почему он не возвращает HttpResponse, хотя render возвращает?
Мой html шаблон и urlpatterns проверены нормально, но он просто ничего не отвечает и говорит вот так The view search.views.search_list didn't return an HttpResponse object. It returned None instead.
Так что же не так?
Если я возвращаю HttpResponse('hello world'), он все равно просто говорит мне, что ничего не возвращает?
def search_list(request):
#return render(request, '/', locals())
start_time = time.time()
searched = True
keywords = request.GET.get('q')
print(keywords)
message = ''
if not keywords:
return redirect('/')
#words = keywords.split('')
word = keywords
post_list = Poem.objects.filter(Q(author_name__contains=word) | Q(model_name__contains=word) | Q(poem_name__contains=word) | Q(dynasty__contains=word) | Q(content__contains=word))
print(post_list)
try:
old_word = SearchHotspot.object.get(word=word)
except:
new_word = SearchHotspot()
new_word.word = word
new_word.count += 1
new_word.save()
else:
old_word.count += 1
old_word.save()
limit = 10
paginator = Paginator(post_list, limit)
page = request.GET.get('page')
try:
posts = paginator.page(page)
except PageNotAnInteger:
posts = paginator.page(1)
except EmptyPage:
posts = paginator.page(paginator.num_pages)
end_time = time.time()
load_time = end_time - start_time
title = keywords + "- 众里寻他千百度"
content = "蓦然回首,那人却在灯火阑珊处。"
return render(request, 'search/result.html', locals())
Не уверен, как выглядит ваш запрос, но если вы попадете в оператор if "if not keyword", вы укажете "return redirect", что вызовет эту ошибку. Правильным методом является HttpReponseRedirect