DJANGO / PYTHON Я пытаюсь загрузить http://127.0.0.1:8000/catalog/. Если пользователь вводит данные на этой странице, форма отправляет запрос search_query в базу данных.Моя проблема в том, что http://127.0.0.1:8000/catalog/ не загружается - это приводит к типу исключения 'MultiValueDictKeyError' со значением исключения 'search_query'.Однако, когда пользователь отправляет данные в форму (т. Е. http://127.0.0.1:8000/catalog/?search_query=biography+of), страница загружается. Я пытаюсь сделать так, чтобы http://127.0.0.1:8000/catalog/ загружался без необходимости отправки поискового запроса пользователем.
Вот моя функция просмотра:
def index(request):
. . .
num_of_word = []
bookInstance_titles = []
bookInstance_ids = []
num_of_word = BookInstance.objects.filter(status='a', book__title__contains=request.GET['search_query']).count()
bookInstances = BookInstance.objects.filter(status='a', book__title__contains=request.GET['search_query'])
for i in bookInstances:
bookInstance_titles.append(str(i.book))
bookInstance_ids.append(str(i.id))
context = {
. . .
'num_of_word': num_of_word,
'bookInstance_titles': bookInstance_titles,
'bookInstance_ids': bookInstance_ids,
}
Я полагаю, что проблема в том, что переменные (num_of_word и bookInstances) пытаются получить доступ к запросу search_query, но / catalog / request не имеетпоисковый запрос. После исследования я все еще не уверен, как решить эту проблему.
Спасибо!