У меня есть следующая форма django, которая будет использоваться пользователями для ввода запроса и выбора модели для поиска этого конкретного запроса:
from django import forms
class search_forms(forms.Form):
search_query = forms.CharField(label='search_query')
path_choices = [('urlpath1/','model name 1'),
('urlpath2/','model name 2')...]
model_paths = forms.ChoiceField(label='model_paths',choices=path_choices)
Эта форма используется для заполнения шаблона, который состоит изполе ввода текста для пользователей, чтобы отправлять запросы, и раскрывающееся поле, в котором указывается, к какой модели следует направлять запрос (переменная path_choices в forms.py).
Thew views.py выглядит следующим образом, который нужно как-то изменить на следующее:
def search(request):
if request.method == 'GET':
form = search_forms(request.GET)
if form.is_valid():
return render(request, 'template_for_model_paths.html', {'form': form, 's_results': s_results})
else:
form = search_forms()
return render(request, 'search.html', {'form': form,})
В настоящее время шаблон формы выдает результат GET следующим образом: / search? search_query = QUERY & model_paths = model_path% 2F
Что бы я хотелКак выполнить: модель_путь / Запрос в качестве результата, который я могу передать обратно в представление для формы поиска и использовать его для перенаправления представления, релевантного для пути_Модели.
Как мне это сделать?Имеет ли этот подход смысл?Или я неправильно применяю намерение функциональности формы?