В моем Views.py есть запрос, который я использую для заполнения раскрывающегося списка. Он работает хорошо, за исключением того, что мне нужно, чтобы он показывал значение c, указанное в переменной, которая соответствует выбору пользователя.
Допустим, у нас есть раскрывающийся список, который заполняется из базы данных ('world ') используя следующий запрос:
regions = world.objects.values_list("regions").distinct()
Так что это заполняет мой выпадающий список с именами регионов. Если пользователь ранее выбрал «Европа» (хранится в переменной r2), как мне изменить этот запрос, чтобы он выбрал «Европа» после заполнения раскрывающегося списка?
Редактировать:
html код:
<select id="regions" name="r2" onclick="GetSelectedText()" onChange="form.submit();">
{% for item in regions %}
<option val="{{ item.name_reg }}"> {{ item }} </option>
{% endfor %}
</select>
<script type="text/javascript">
function GetSelectedText(){
var r = document.getElementById("regions");
var result_r = r.options[r.selectedIndex].text;
document.getElementById("result_r").innerHTML = result_r;
}
</script>
Views.py:
def MyView(request):
result_r = request.POST.get('r2')
print(result_r)
if request.method == 'POST' and result_r != None:
query_results = world.objects.all()
regions = world.objects.values_list("name_reg").distinct()
query_results_dict = {
'query_results': query_results,
'regions': regions,
}
return render(request,'home.html', query_results_dict)